1/19
These flashcards cover essential vocabulary and concepts from the lecture on Software Engineering, including definitions and key attributes relevant to the field.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Software Engineering
An engineering discipline concerned with all aspects of software production from initial specification to system maintenance.
System Modelling
The process of creating abstract models of a system to understand and manage its complexity.
UML
Unified Modeling Language; a standardized modeling language used to specify, visualize, develop, and document software systems.
Dependability
A software attribute that includes reliability, security, and safety, ensuring that software does not cause harm in failure.
Maintainability
The ease with which software can evolve to meet changing customer needs.
Ethical Responsibility
The obligation of software engineers to act in an honest and ethically responsible manner.
Waterfall Model
A traditional software engineering process model that is linear and sequential, often difficult to adapt to changes.
Incremental Development
A software development approach that delivers useful software before the final product, allowing for customer feedback.
Agile Development
A flexible approach to software development that emphasizes collaboration, customer feedback, and small, rapid releases.
Validation
The process of checking whether a system meets the requirements and fulfills the intended purpose.
Formal Testing
Systematic testing using defined processes to evaluate the correctness and reliability of software.
Risk Recognition
The acknowledgment of potential risks in a software process, crucial for successful project management.
Reusability
The practice of using existing software components in new applications to reduce development time and costs.
Specification
The definition of requirements for what a software system should accomplish.
Software Lifecycle
The entire process of software development, including planning, designing, implementing, testing, and maintaining.
System Integration
The process of bringing together various components of a software system to ensure they function together as a whole.
Security Engineering
A discipline focused on ensuring the confidentiality, integrity, and availability of software systems.
Software Process Model
An abstract representation that describes the process of software development from a particular perspective.
Stakeholder
Any individual or group that has an interest in the outcome of a software project, including clients, users, and developers.
Collaborative Development
A development approach that involves teamwork and cooperation to enhance software quality and productivity.