Selected Topic Tool based SW-Engineering
Tools to support the Software Life Cycle in general - Branching, Merging, and others - Working With Source Control - Tasks, Impediments, Bugs - Manage the work - Working with tools to plan the work - Working with holistic tools
Tools to support the Software Life Cycle in general - Branching, Merging, and others - Working With Source Control - Tasks, Impediments, Bugs - Manage the work - Working with tools to plan the work - Working with holistic tools
Kartei Details
Karten | 18 |
---|---|
Sprache | English |
Kategorie | Informatik |
Stufe | Universität |
Erstellt / Aktualisiert | 26.09.2016 / 10.11.2016 |
Lizenzierung | Keine Angabe |
Weblink |
https://card2brain.ch/box/selected_topic_tool_based_swengineering
|
Einbinden |
<iframe src="https://card2brain.ch/box/selected_topic_tool_based_swengineering/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
What are the responsibilities of Version Control Systems?
Backup and Restore
Synchronization of collaborative generated Code
Undo functions
Change tracking
Ownership tracking
Sandboxing
Branching and merging
What are the basic functions of a VCS?
Adding files to Repository (repo)
Check out (download a file from repo)
Check in (uploading a file to repo)
Changelog/History (list of changes)
Update (load the latest version from repo)
What are additional functions of a VCS?
Branch (create a new copy of the code on repo)
Diff (finding the differences between two verisons of a file)
Merge (bringing two Branches together)
Conflict Resolution (changes have been created on one file at the same time)
Locking (prevent others to work on a file)
What are the benefits of a distributed VCS?
Local sandbox for everyone
Works offline
Fast
Branching and merging is easier
What are the disadvantages of a distributed VCS?
No backup
No latest version
No readable revision numbers
What are the different phases of the software life cycle?
Req. Analysis - elicitation / documenting / formulating / managing of requirements
Design - design decisions are made, documented and verified
Implementation - coding, documentation of code, source code management, code change mgmt.
Testing - Test case definition and creation, creating test data, running tests, managing bug reports
Release - Defining dependencies, Running the tests, Building the software (automatically)
Maintenance - how software could be changed / refactored or replaced
For which areas in Requirement Engineering could you use tools and what are some established products for these?
Req. formulation, documentation and management
Products: Microsoft Team Foundation Services, Atlassin Jira, IBM Rational DOORS
What are the Pro's and Con's of SVN?
Pros: integration into IDE (VS), good collaboration and source code management
Cons: no holistic management