The systematic application of engineering principles to designing, developing, testing, and maintaining software.
What is software engineering?
The four basic database operations abbreviated by this acronym: Create, Read, Update, and Delete.
What is CRUD?
The principle meaning "You Aren't Gonna Need It," which discourages implementing features before they are needed.
What is YAGNI?
The acronym for Application Programming Interface.
What is an API?
The acronym for Unified Modeling Language.
What is UML?
The process that includes requirements analysis, design, implementation, testing, deployment, and maintenance.
What is the Software Development Life Cycle (SDLC)?
The process of checking whether software is being built correctly according to specifications, as opposed to checking whether it meets users' needs.
What is verification?
A fixed-length period in Scrum during which a team works toward a defined goal and produces a usable increment.
What is a sprint?
The version control system used to track changes to code, as opposed to the online platform commonly used to host repositories and collaborate.
What is Git?
The type of UML diagram that represents a system's static structure, rather than its behavior or interactions.
What is a structural diagram?
The requirements framework whose letters stand for World, Requirements, Specification, Program, and Machine.
What is WRSPM?
The type of testing that checks individual components or functions in isolation.
What is unit testing?
The Scrum role responsible for helping the team follow Scrum, facilitating the process, and helping remove obstacles.
What is the Scrum Master?
The SQL command used to retrieve data from a database table.
What is SELECT?
The software design principle of breaking a system into smaller, manageable, separate modules.
What is modularity?
In a banking application, transferring money is an example of this type of requirement, while encrypting financial information is an example of a non-functional requirement.
What is a functional requirement?
The type of testing used when a login module works independently but fails when connected to the database module.
What is integration testing?
The accumulated cost of shortcuts or postponed improvements that make future software changes harder.
What is technical debt?
The type of key in an Enrollments table that references a key in a Students table.
What is a foreign key?
The architecture pattern that separates an application into Model, View, and Controller.
What is MVC (Model-View-Controller)?
The reason software engineering involves more than simply writing code, including planning, design, testing, collaboration, deployment, and maintenance.
What is the process of developing and maintaining reliable software?
The design approach that combines objects to create a "has-a" relationship, often reducing tight coupling compared with inheritance.
What is composition?
The workflow management method that visualizes work, limits work in progress, and helps identify bottlenecks.
What is Kanban?
The Git command that stages changes in the current directory and its subdirectories for the next commit.
What is git add .?
The architecture pattern that divides an application into independently deployable services, each responsible for a specific business function.
What is microservices architecture?