Software
Software
1. Reliability:
• Definition: The reliability of software refers to its ability to
ensure users can access the software whenever they need it.
3. Safety:
• Definition: Safety in software engineering involves preventing
1. Reliability:
• Definition: Reliability is the ability of a software system to
results.
• Consistency: The system behaves consistently over time and
minimize risks.
4. Security:
• Definition: Security addresses the protection of software systems
unauthorized modifications.
• Availability: Ensuring the availability of resources and services.
5. Maintainability:
• Definition: Maintainability is the ease with which a software system
easier modifications.
• Documentation: Clear documentation aids in understanding
faults.
• Fault Isolation: Isolating faults to prevent them from
spreading and causing system-wide failures.
7. Robustness:
• Definition: Robustness is the ability of a software system to handle
over time.
• Mean Time Between Failures (MTBF): The average time between
consecutive failures.
• Mean Time to Failure (MTTF): The average time a system can be
cause outages.
• Network Reliability: The reliability of the network infrastructure plays
1. Definition:
• Safety in software engineering is the discipline that focuses on
with the software system and its interactions with the environment.
• Risk Assessment: Evaluating the likelihood and severity of identified
to authenticated users.
• Encryption: Encoding data in a way that only authorized parties can
cyber threats.
• User Awareness: Ensuring that users are aware of security best
1. Definition:
• Fault tolerance is the property that enables a system to continue
the system's state allows the system to roll back to a stable state
before the occurrence of a fault.
• Graceful Degradation: Designing the system to gracefully degrade
its performance rather than completely failing when faced with
certain faults. This ensures that essential functions continue even if
non-essential ones are compromised.
4. High Availability (HA):
• Definition: High availability systems are designed to minimize
1. Definition:
• Software reuse is the process of creating software components,
procedural programming.
• Component-Based Reuse: Reusing larger software components or
modules.
• Framework Reuse: Reusing entire frameworks or architectures.