SlideShare a Scribd company logo
1 of 12
Download to read offline
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
BLG 411E – Software Engineering 
Recitation Session 1 
Source Control and Requirements Traceability 
Atakan Aral, Bilge Süheyla Akkoca 
30.09.2014
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Outline 
1 Source Control 
Terminology 
Centralized vs. Distributed 
2 Requirements Traceability 
OSRMT 
3 References
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Definition 
What is source control? 
Revision control is the management of changes to a 
collection of (usually textual) data over time. 
Large documents 
Books 
Software source code 
Source control tracks and provides control over 
changes to source code. 
as well as configuration and documentation files.
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Motivation 
Why do we need it? 
Usually multiple versions of the software are developed 
in different locations. 
Trade-off between bugs and features 
Single piece of code is edited by multiple team 
members simultaneously. 
Ownership of changes should be known. 
Coding efforts should not be overwritten. 
Rolling back should be allowed.
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Terminology 1 
Copies 
Trunk (Baseline, Mainline, Master) 
The unique line of develop-ment 
that is not a branch 
Branch (Fork) A copy of the trunk 
that is created at a point in 
time and developed 
independently. 
Tag (Label) An important 
snapshot in time with a 
user-friendly, meaningful 
name or revision number. 
Working copy (Sandbox) Local copy of 
files from a repository.
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Terminology 2 
Operations 
Check out To create a local working 
copy from the repository. 
Check in (Commit) To write or merge 
the changes made in the 
working copy back to the 
repository. 
Merge (Integration) An operation in 
which two sets of changes 
are applied to a file or set of 
files. 
During check in 
During check out 
During branch return
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Terminology 3 
Others 
Conflict Changes to the same 
document from different 
members that can not be 
merged by the system. 
Resolve User intervention to address 
a conflict. 
Combine changes 
Select one of the 
changes 
Repository (Depot) Location where 
current and historical data of 
the files are stored.
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Centralized Revision Control 
Server-client approach 
There is a single shared data store, the repository. 
Check-outs and check-ins done with reference to it 
(slow). 
Only the requested files are copied from the repository 
during a check out (fast). 
Both merging and locking mechanisms are available. 
Typical example: Apache Subversion (SVN)
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Distributed Revision Control 
Peer-to-peer approach 
Each working copy is a complete repository. 
Check-outs and check-ins done with reference to local 
repository (fast). 
Push and pull operations are available to share 
changes across repositories. 
Users can work productively when not connected to a 
network. 
Users can keep early drafts private. 
Initial pull (clone) downloads the whole repository 
(slow). 
There is no single point of failure, each repository acts 
as a backup. 
Locking mechanisms are not available for critical or 
non-mergable files. 
Typical example: Git
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Definition 
What is Requirements Traceability? 
Requirements Management is: 
the process of documenting, analyzing, tracing, 
prioritizing and agreeing on requirements, 
controlling change and communicating to relevant 
stakeholders. 
Requirements Traceability is a sub-discipline of 
requirements management. It allows: 
tracing each requirement in both directions, 
tracking every change that was made to each 
requirement, 
detailed documentation and visualization. 
Tracing beyond the requirements 
Traceability matrix
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
Open Source Requirements Management Tool 
OSRMT 
Discontinued and obsolete (32-bit only) 
A good tool to learn basics of requirements 
management 
Modern tools (including commercial ones) inherit many 
concepts and features from it. 
Designed for tracing beyond the requirements 
For all artifacts in software development life-cycle 
(features, requirements, design, implementation and 
testing) 
Allows requirements derivation, version control, 
common or custom attributes, rationale, source, risk, 
effort, etc.
BLG 411E 
Software 
Engineering 
Recitation 1 
Source 
Control 
Terminology 
Centralized vs. 
Distributed 
Requirements 
Traceability 
OSRMT 
References 
References and Further Reading 
http://git-scm.com/ 
https://github.com/ 
https://subversion.apache.org/ 
http://en.wikipedia.org/wiki/Revision_control 
http://www.dwheeler.com/essays/scm.html 
http://www.youtube.com/watch?v=4XpnKHJAok8 
http://sourceforge.net/projects/osrmt/ 
http://www.ideastub.com/osrmt.php 
http://www.ideastub.com/osrmt_docs/osrmt_user_manual.pdf 
http://en.wikipedia.org/wiki/Requirements_management 
http://en.wikipedia.org/wiki/Requirements_traceability 
http://en.wikipedia.org/wiki/Traceability_matrix 
http://www.youtube.com/watch?v=MfsAi0Rnemc

More Related Content

Similar to Software Engineering - RS1

Software Configuration Management.ppt
Software Configuration Management.pptSoftware Configuration Management.ppt
Software Configuration Management.pptDrTThendralCompSci
 
Process management seminar
Process management seminarProcess management seminar
Process management seminarapurva_naik
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Managementelliando dias
 
Software Configuration Management introduction
Software Configuration Management introductionSoftware Configuration Management introduction
Software Configuration Management introductionMani Deepak Choudhry
 
IRJET-Evolution of Version Control Systems and a Study on Tortoisesvn
IRJET-Evolution of Version Control Systems and a Study on TortoisesvnIRJET-Evolution of Version Control Systems and a Study on Tortoisesvn
IRJET-Evolution of Version Control Systems and a Study on TortoisesvnIRJET Journal
 
Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...Mumbai Academisc
 
software configuration management
software configuration managementsoftware configuration management
software configuration managementFáber D. Giraldo
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd modelsSukhdeep Singh
 
CS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduceCS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduceJ Singh
 
White Paper: Scalable Lifecycle Management via Perforce
White Paper: Scalable Lifecycle Management via PerforceWhite Paper: Scalable Lifecycle Management via Perforce
White Paper: Scalable Lifecycle Management via PerforcePerforce
 
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)Amr E. Mohamed
 
A Comparative Study of Forward and Reverse Engineering
A Comparative Study of Forward and Reverse EngineeringA Comparative Study of Forward and Reverse Engineering
A Comparative Study of Forward and Reverse Engineeringijsrd.com
 
Middleware Technologies
Middleware Technologies Middleware Technologies
Middleware Technologies prakashk453625
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.pptdivyammo
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.pptdivyammo
 
Customising Oracle's eBusiness Suite
Customising Oracle's eBusiness SuiteCustomising Oracle's eBusiness Suite
Customising Oracle's eBusiness Suitedrdavidtaylor
 
Distribution transparency and Distributed transaction
Distribution transparency and Distributed transactionDistribution transparency and Distributed transaction
Distribution transparency and Distributed transactionshraddha mane
 

Similar to Software Engineering - RS1 (20)

Software Configuration Management.ppt
Software Configuration Management.pptSoftware Configuration Management.ppt
Software Configuration Management.ppt
 
Process management seminar
Process management seminarProcess management seminar
Process management seminar
 
Git an introductino
Git an introductinoGit an introductino
Git an introductino
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
lecture14.ppt
lecture14.pptlecture14.ppt
lecture14.ppt
 
Software Configuration Management introduction
Software Configuration Management introductionSoftware Configuration Management introduction
Software Configuration Management introduction
 
IRJET-Evolution of Version Control Systems and a Study on Tortoisesvn
IRJET-Evolution of Version Control Systems and a Study on TortoisesvnIRJET-Evolution of Version Control Systems and a Study on Tortoisesvn
IRJET-Evolution of Version Control Systems and a Study on Tortoisesvn
 
Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...
 
software configuration management
software configuration managementsoftware configuration management
software configuration management
 
Struts Ppt 1
Struts Ppt 1Struts Ppt 1
Struts Ppt 1
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd models
 
CS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduceCS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduce
 
White Paper: Scalable Lifecycle Management via Perforce
White Paper: Scalable Lifecycle Management via PerforceWhite Paper: Scalable Lifecycle Management via Perforce
White Paper: Scalable Lifecycle Management via Perforce
 
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)
 
A Comparative Study of Forward and Reverse Engineering
A Comparative Study of Forward and Reverse EngineeringA Comparative Study of Forward and Reverse Engineering
A Comparative Study of Forward and Reverse Engineering
 
Middleware Technologies
Middleware Technologies Middleware Technologies
Middleware Technologies
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
 
Customising Oracle's eBusiness Suite
Customising Oracle's eBusiness SuiteCustomising Oracle's eBusiness Suite
Customising Oracle's eBusiness Suite
 
Distribution transparency and Distributed transaction
Distribution transparency and Distributed transactionDistribution transparency and Distributed transaction
Distribution transparency and Distributed transaction
 

More from AtakanAral

Subgraph Matching for Resource Allocation in the Federated Cloud Environment
Subgraph Matching for Resource Allocation in the Federated Cloud EnvironmentSubgraph Matching for Resource Allocation in the Federated Cloud Environment
Subgraph Matching for Resource Allocation in the Federated Cloud EnvironmentAtakanAral
 
Quality of Service Channelling for Latency Sensitive Edge Applications
Quality of Service Channelling for Latency Sensitive Edge ApplicationsQuality of Service Channelling for Latency Sensitive Edge Applications
Quality of Service Channelling for Latency Sensitive Edge ApplicationsAtakanAral
 
Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...
Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...
Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...AtakanAral
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...AtakanAral
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...AtakanAral
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...AtakanAral
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...AtakanAral
 
Software Engineering - RS4
Software Engineering - RS4Software Engineering - RS4
Software Engineering - RS4AtakanAral
 
Software Engineering - RS2
Software Engineering - RS2Software Engineering - RS2
Software Engineering - RS2AtakanAral
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]AtakanAral
 
Analysis of Algorithms II - PS5
Analysis of Algorithms II - PS5Analysis of Algorithms II - PS5
Analysis of Algorithms II - PS5AtakanAral
 
Improving Resource Utilization in Cloud using Application Placement Heuristics
Improving Resource Utilization in Cloud using Application Placement HeuristicsImproving Resource Utilization in Cloud using Application Placement Heuristics
Improving Resource Utilization in Cloud using Application Placement HeuristicsAtakanAral
 
Analysis of Algorithms II - PS3
Analysis of Algorithms II - PS3Analysis of Algorithms II - PS3
Analysis of Algorithms II - PS3AtakanAral
 
Analysis of Algorithms II - PS2
Analysis of Algorithms II - PS2Analysis of Algorithms II - PS2
Analysis of Algorithms II - PS2AtakanAral
 
Analysis of Algorithms - 5
Analysis of Algorithms - 5Analysis of Algorithms - 5
Analysis of Algorithms - 5AtakanAral
 
Analysis of Algorithms - 3
Analysis of Algorithms - 3Analysis of Algorithms - 3
Analysis of Algorithms - 3AtakanAral
 
Analysis of Algorithms - 2
Analysis of Algorithms - 2Analysis of Algorithms - 2
Analysis of Algorithms - 2AtakanAral
 
Analysis of Algorithms - 1
Analysis of Algorithms - 1Analysis of Algorithms - 1
Analysis of Algorithms - 1AtakanAral
 
Mobile Multi-domain Search over Structured Web Data
Mobile Multi-domain Search over Structured Web DataMobile Multi-domain Search over Structured Web Data
Mobile Multi-domain Search over Structured Web DataAtakanAral
 

More from AtakanAral (19)

Subgraph Matching for Resource Allocation in the Federated Cloud Environment
Subgraph Matching for Resource Allocation in the Federated Cloud EnvironmentSubgraph Matching for Resource Allocation in the Federated Cloud Environment
Subgraph Matching for Resource Allocation in the Federated Cloud Environment
 
Quality of Service Channelling for Latency Sensitive Edge Applications
Quality of Service Channelling for Latency Sensitive Edge ApplicationsQuality of Service Channelling for Latency Sensitive Edge Applications
Quality of Service Channelling for Latency Sensitive Edge Applications
 
Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...
Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...
Resource Mapping Optimization for Distributed Cloud Services - PhD Thesis Def...
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Progres...
 
Software Engineering - RS4
Software Engineering - RS4Software Engineering - RS4
Software Engineering - RS4
 
Software Engineering - RS2
Software Engineering - RS2Software Engineering - RS2
Software Engineering - RS2
 
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]
Modeling and Optimization of Resource Allocation in Cloud [PhD Thesis Proposal]
 
Analysis of Algorithms II - PS5
Analysis of Algorithms II - PS5Analysis of Algorithms II - PS5
Analysis of Algorithms II - PS5
 
Improving Resource Utilization in Cloud using Application Placement Heuristics
Improving Resource Utilization in Cloud using Application Placement HeuristicsImproving Resource Utilization in Cloud using Application Placement Heuristics
Improving Resource Utilization in Cloud using Application Placement Heuristics
 
Analysis of Algorithms II - PS3
Analysis of Algorithms II - PS3Analysis of Algorithms II - PS3
Analysis of Algorithms II - PS3
 
Analysis of Algorithms II - PS2
Analysis of Algorithms II - PS2Analysis of Algorithms II - PS2
Analysis of Algorithms II - PS2
 
Analysis of Algorithms - 5
Analysis of Algorithms - 5Analysis of Algorithms - 5
Analysis of Algorithms - 5
 
Analysis of Algorithms - 3
Analysis of Algorithms - 3Analysis of Algorithms - 3
Analysis of Algorithms - 3
 
Analysis of Algorithms - 2
Analysis of Algorithms - 2Analysis of Algorithms - 2
Analysis of Algorithms - 2
 
Analysis of Algorithms - 1
Analysis of Algorithms - 1Analysis of Algorithms - 1
Analysis of Algorithms - 1
 
Mobile Multi-domain Search over Structured Web Data
Mobile Multi-domain Search over Structured Web DataMobile Multi-domain Search over Structured Web Data
Mobile Multi-domain Search over Structured Web Data
 

Recently uploaded

React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 

Recently uploaded (20)

React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 

Software Engineering - RS1

  • 1. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References BLG 411E – Software Engineering Recitation Session 1 Source Control and Requirements Traceability Atakan Aral, Bilge Süheyla Akkoca 30.09.2014
  • 2. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Outline 1 Source Control Terminology Centralized vs. Distributed 2 Requirements Traceability OSRMT 3 References
  • 3. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Definition What is source control? Revision control is the management of changes to a collection of (usually textual) data over time. Large documents Books Software source code Source control tracks and provides control over changes to source code. as well as configuration and documentation files.
  • 4. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Motivation Why do we need it? Usually multiple versions of the software are developed in different locations. Trade-off between bugs and features Single piece of code is edited by multiple team members simultaneously. Ownership of changes should be known. Coding efforts should not be overwritten. Rolling back should be allowed.
  • 5. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Terminology 1 Copies Trunk (Baseline, Mainline, Master) The unique line of develop-ment that is not a branch Branch (Fork) A copy of the trunk that is created at a point in time and developed independently. Tag (Label) An important snapshot in time with a user-friendly, meaningful name or revision number. Working copy (Sandbox) Local copy of files from a repository.
  • 6. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Terminology 2 Operations Check out To create a local working copy from the repository. Check in (Commit) To write or merge the changes made in the working copy back to the repository. Merge (Integration) An operation in which two sets of changes are applied to a file or set of files. During check in During check out During branch return
  • 7. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Terminology 3 Others Conflict Changes to the same document from different members that can not be merged by the system. Resolve User intervention to address a conflict. Combine changes Select one of the changes Repository (Depot) Location where current and historical data of the files are stored.
  • 8. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Centralized Revision Control Server-client approach There is a single shared data store, the repository. Check-outs and check-ins done with reference to it (slow). Only the requested files are copied from the repository during a check out (fast). Both merging and locking mechanisms are available. Typical example: Apache Subversion (SVN)
  • 9. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Distributed Revision Control Peer-to-peer approach Each working copy is a complete repository. Check-outs and check-ins done with reference to local repository (fast). Push and pull operations are available to share changes across repositories. Users can work productively when not connected to a network. Users can keep early drafts private. Initial pull (clone) downloads the whole repository (slow). There is no single point of failure, each repository acts as a backup. Locking mechanisms are not available for critical or non-mergable files. Typical example: Git
  • 10. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Definition What is Requirements Traceability? Requirements Management is: the process of documenting, analyzing, tracing, prioritizing and agreeing on requirements, controlling change and communicating to relevant stakeholders. Requirements Traceability is a sub-discipline of requirements management. It allows: tracing each requirement in both directions, tracking every change that was made to each requirement, detailed documentation and visualization. Tracing beyond the requirements Traceability matrix
  • 11. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References Open Source Requirements Management Tool OSRMT Discontinued and obsolete (32-bit only) A good tool to learn basics of requirements management Modern tools (including commercial ones) inherit many concepts and features from it. Designed for tracing beyond the requirements For all artifacts in software development life-cycle (features, requirements, design, implementation and testing) Allows requirements derivation, version control, common or custom attributes, rationale, source, risk, effort, etc.
  • 12. BLG 411E Software Engineering Recitation 1 Source Control Terminology Centralized vs. Distributed Requirements Traceability OSRMT References References and Further Reading http://git-scm.com/ https://github.com/ https://subversion.apache.org/ http://en.wikipedia.org/wiki/Revision_control http://www.dwheeler.com/essays/scm.html http://www.youtube.com/watch?v=4XpnKHJAok8 http://sourceforge.net/projects/osrmt/ http://www.ideastub.com/osrmt.php http://www.ideastub.com/osrmt_docs/osrmt_user_manual.pdf http://en.wikipedia.org/wiki/Requirements_management http://en.wikipedia.org/wiki/Requirements_traceability http://en.wikipedia.org/wiki/Traceability_matrix http://www.youtube.com/watch?v=MfsAi0Rnemc