The application of engineering principles to software development.
What is software engineering?
This describes what a software must do, such as a login or payment process.
What are functional requirements?
This design principle involves dividing software into smaller, manageable parts.
What is modularity?
This type of test checks individual functions or components of a system.
What is unit testing?
This development methodology values individuals and interactions over processes and tools.
What is Agile?
The ability to work with others, including designers, testers, and projects managers.
What is teamwork?
This describes a systems attributes like performance and security.
What are non-functional requirements?
A "good" software architecture should be scalable, maintainable, flexible, and this.
What is efficient?
The process of improving code structure without changing its behavior is called this.
What is refactoring?
The four core values of Agile prioritize working software over this.
What is comprehensive documentation?
This role involves understanding the problem, designing solutions, coding, testing, and maintaining software.
What is a software engineer?
This framework consists of World, Requirements, Specification, Program, and Machine.
What is WRSPM?
This architecture pattern separates data, UI, and control logic.
What is Model-View-Controller (MVC)?
This principle states that each module should have only one purpose.
What is the Single Responsibility Principle?
The Agile role responsible for facilitating team processes is called this.
What is Scrum Master?
Software engineering isn't about guessing or hacking, but involves this approach.
What is a systematic approach?
The process of gathering and defining what a system must do is called this.
What is requirements engineering?
These are diagrams used to visualize system structures and behaviors.
What are UML diagrams?
This acronym stands for the four basic database operations: Create, Read, Update, Delete.
What is CRUD?
This popular version control system allows developers to track changes in code.
What is Git?
The main five activities in software engineering include understanding the problem, designing a plan, coding, testing, and this final step.
What is maintaining the software?
These are the six main phases of the Software Testing Life Cycle (STLC).
What are requirement analysis, test planning, test design, test execution, defect reporting, and test closure?
This software management tool uses visual boards, columns, and cards to track progress.
What is Kanban?
Deployment is a mix between testing and this phase.
What is implementation?
The command used to stage all changes before committing in Git is this.
What is 'git add .'?