Basics Flashcards
(21 cards)
What are the core stages of the software engineering process?
Specification, Development, Validation, Evolution
What is the Waterfall Model?
A linear software development model with sequential phases: Requirements, Design, Implementation, Testing, Maintenance.
List a problem with the Waterfall model.
Requires perfect requirements; inflexible to changes.
What is the V-Model in software engineering?
An extension of the Waterfall model that emphasizes verification and validation.
What is an Agile Model?
An iterative and incremental model focused on collaboration, customer feedback, and small, rapid releases.
Name a drawback of Agile models.
Lack of process visibility; poor structure; requires special skills.
How is effort typically distributed in SE processes?
60% design/build, 40% testing/delivery, with evolution/maintenance often being most costly.
What does the Git command git status do?
Check the current state of your working directory
What is the Git command to stage changes?
git add <filename>
What is the Git command to commit changes?
git commit -m 'message'
What is the Git command to push changes?
git push
What is the Git command to clone a repository? And what does cloning a repository mean?
git clone <repository-url>
download a repository to your local machine
What does git pull
do?
Fetches and merges changes from the remote repository.
What is the purpose of git log
?
Displays the commit history.
What is a Git branch used for?
Allows working on different features or fixes independently.
What does git tag
do?
Gives a friendly name to a specific commit.
What is .gitignore
used for?
Specifies files and directories Git should ignore.
How does Git help prevent code loss?
Maintains a complete history, designed to stop multiple people overwriting changes by mistake, lets you work on copies
What should team members do before pushing changes?
Run git pull
to ensure no conflicts with the remote.
Why doesn’t Dropbox replace Git?
Dropbox lacks version control, branching, and proper merge tools for code collaboration.
What does git fork do?
Create a personal copy of someone else’s repository