- Resource-efficient, fast, low-footprint, low latency.
- Energy-, storage- and network efficient, having adequate capacity
- Development-efficient, being easy to change (although that aspect may better be covered by #flexible)
- Time-to-market, how efficient new features can go live
Definitions
capable of producing desired results with little or no waste (as of time or materials)
The amount of computing resources and code required by a program to perform a function.
Effective vs Efficient
The words effective and efficient both mean “capable of producing a result,” but there is an important difference. Effective means “producing a result that is wanted”. Efficient means “capable of producing desired results without wasting materials, time, or energy”. The difference is that when something is effective it produces a result even if it takes some unnecessary resources to do so. When something is efficient, not only does it produce a result, but it does so in a quick or simple way using as little material, time, effort, or energy as possible. The following example sentences show how the two words are used.
- The 200-page instruction manual was effective (=successful) in teaching the teen to repair the car himself, but it would have been more efficient (=faster and easier) for someone to show him.
- His disorganized method of cleaning the house was effective but it was not efficient; in the end, the house was clean, but it took much longer than it should have.
The word effective puts more attention on the actual ability to produce a desired result. The word efficient puts more attention on the lack of waste in producing that result.
Typical Acceptance Criteria
Efficient, as we saw above, can mean several different things:
- efficient at runtime, like defined by specific time behavior, resource consumption (e.g. energy, memory, processes, threads, network) or capacity (throughput, volume processed)
- efficient to change or modify something within the system or its infrastructure
- efficient concerning energy or CO2 consumption
- efficient development processes, like short time-to-market
Scenario Response Measures from [Bass et al.]
- The (maximum, medium, mean median) time the response takes ([latency])
- The number or percentage of satisfied requests over some time interval (throughput) or set of events received
- The number or percentage of requests that go unsatisfied
- The variation in response time (jitter)
- Usage level of a computing resource
What Stakeholders mean by efficient
Stakeholder | (potential) Expectation for efficient |
---|---|
User | * system produces desired results quickly * can achieve desired results with low effort, e.g. only a few keystrokes * system reacts immediately to commands * low-energy consumption, e.g. long battery life |
Product-Owner | * dev-team can implement new features quickly |
Management | * high return on investment |
Developer | * new features can be implemented quickly * build works quickly * automated tests run quickly |
Tester | * tests run quickly * automated tests find relevant bugs * test infrastructure works with appropriate resources |
Admin | * fast deployment, installation and configuration |
Domain-Expert | - |
Others | - |
Qualities tagged with #efficient
- Affordability
- Budget constraint
- Capacity
- Carbon Emission Efficiency
- Code Complexity
- Code Readability
- Coherence
- Cohesion
- Compliance
- Conciseness
- Consistency
- Cost
- Cycle time
- Effectiveness
- Efficiency
- Energy Efficiency
- Jitter
- Latency
- Loose Coupling
- Memory usage
- Performance
- Profitability
- Releasability
- Resource efficiency
- Resource utilization
- Response Time
- Responsiveness
- Simplicity
- Speed to Market
- Speed
- Standard Compliance
- Startup Time
- Sustainability
- Throughput
- Time behaviour
- Time to Market
- Timeliness
Requirements tagged with #efficient
- Add new product under 60 minutes
- Efficiency
- Extensibility
- Usability
- Affordable CRM (customer relationship management)
- Affordability
- Budget constraint
- Cost
- Profitability
- Budget constrained library update
- Affordability
- Budget constraint
- Cost
- Time to Market
- Capacity to process 1000 sensor inputs per minute
- Performance
- Speed
- Time behaviour
- Consistent keyboard shortcuts
- Consistency
- Interaction capability
- Usability
- User assistance
- User experience
- Data Throughput for Visual Test System
- Capacity
- Efficiency
- Performance
- Throughput
- Easily understandable acceptance test cases
- Consistency
- Efficiency
- Interaction capability
- Maintainability
- Suitability
- Easily understandable generated code
- Code Readability
- Interaction capability
- Legibility
- Maintainability
- Readability
- Understandability
- Efficient change of business rules
- Adaptability
- Changeability
- Configurability
- Flexibility
- Efficient generation of test data
- Capacity
- Efficiency
- Time behaviour
- Efficient save function
- Capacity
- Efficiency
- Time behaviour
- Efficient update of annual accounting report
- Changeability
- Efficiency
- Maintainability
- Fast and accurate sensor
- Accuracy
- Efficiency
- Preciseness
- Fast creation of sales report
- Efficiency
- Performance
- Responsiveness
- Speed
- Time behaviour
- Fast rollout of changes
- Efficiency
- Operability
- Speed
- Time to Market
- Fast startup time (less than 90 sec)
- Elasticity
- Performance
- Scalability
- Speed
- Time behaviour
- Independent enhancement of subsystem
- Adaptability
- Agility
- Changeability
- Efficiency
- Maintainability
- Independent replacement of subsystem
- Adaptability
- Agility
- Changeability
- Efficiency
- Maintainability
- Low impact diagnosis
- Efficiency
- Resource efficiency
- Time behaviour
- Low-overhead query execution measurement
- Efficiency
- Memory usage
- Resource efficiency
- Resource utilization
- Time behaviour
- Maintainable checking strategies
- Efficiency
- Modular System for Data Analysis
- Composability
- Modularity
- Stability
- Near instant search results
- Efficiency
- Interaction capability
- Performance
- Speed
- Time behaviour
- Parallel Data Modification
- Performance
- Quickly locate bugs
- Efficiency
- Maintainability
- Reduce energy consumption with every new version
- Carbon Emission Efficiency
- Energy Efficiency
- Sustainability
- Respond to 15000 requests per workday
- Capacity
- Resource efficiency
- Response time for image rendering
- Efficiency
- Performance
- Response Time
- Speed
- Time behaviour
- Restricted Memory
- Efficiency
- Resource efficiency
- Save at least 20% of carbon emissions with every new version
- Carbon Emission Efficiency
- Efficiency
- Energy Efficiency
- Scale up in 2 Minutes
- Elasticity
- Performance
- Scalability