1 / 10

Improving Software Economics

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

clem
Download Presentation

Improving Software Economics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Improving Software Economics

  2. Software & the Internet: Business Drivers Surveyed 100 SoftwareIndustry Experts • Growth of complexity • Continuously-evolving systems • Software Development

  3. 1. Growth of Complexity: e-business Stock Trading High • Distributed • Concurrent • Connected • Real-time/embedded • Fault tolerant • Customized Medium Low Time

  4. 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

  5. 3. Software Development: Today’s Business Driver Accessibility & Usage Software Development Power Bandwidth

  6. 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)

  7. 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

  8. Results of An Architecture-First Process Risk Exploration Period Risk Resolution Period Controlled Risk Management Period Waterfall Iterative Risk Risk Reduction Time

  9. 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

  10. 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

More Related