Chapter 2: SPE Overview Flashcards
Why is SPE Necessary?
SPE can detect problems early in the system development cycle by using qualitative analysis
What is Fix-it-later approach
When bugs are encountered do not fix them right away wait until everything is finished to go back to fix it. Very little modelling and going direct into implementation.
Problems with fix-it-later approach?
- Tuning software later does not have the benefits of fixing design issues
- Can cost exponentially more in the future to fix bugs
What are the types of software development models?
- Waterfall method
- Iterative Model
- Spiral Model
What are systems with high performance requirements?
- End-user related functions (Reservation systems)
- Real-time, critical mission systems (rocketry, airplanes)
- Employee support systems (inventory system, CAD systems)
What is Software Performance Engineering (SPE)?
SPE is a systematic, quantative analysis approach to constructing software systems that meet performance objectives.
What are the benefits of starting early in the lifecycle?
- Increased productivity - don’t throw away bad code
- Final design product is of improved quality
- Controlled costs of the supporting hardware and software
What is SPE for object-orientated systems?
SPE is tightly integrated with UML which is also often used in OOP analysis.
What are the stages of SPE process for object-orientated systems
- Assess Performance Risk
- Identify Critical Use Cases
- Select Key Performance Scenarios
- Establish Performance Objectives
- Construct Performance Models
- Determine Software Resource Requirements
- Add Computer Resource Requirements
- Evaluate the Models
- Verify and Validate the Models
What is the Simple-Model Strategy?
- Start with the simplest model that identifies issues with the system architecture implementation plans.
- Used in early stages.
What is the Best- and Worse-case Strategy?
Use best- and worst-case estimates of resource requirements to establish bounds on expected performance and manage uncertainty in estimates.
What is the adapt-to-precision strategy?
- Match the details represented in the models to your knowledge of the software processing details.
- Used in later stages.