19 Ekim 2017 Perşembe

poll

Giriş
İlk parametre pollfd dizisidir. İkinci parametre diziniz uzunluğudur. Üçüncü parametre milisaniye cinsinden en fazla kaç ne kadar bekleneceğidir.

İlginlendiğimiz event'leri events alanına yazarız. Çağrı sonunda revents alanında sonuçları alırız.

POLLIN
Okuma için kullanılır.

POLLOUT
Yazma için kullanılır.

POLLPRI
Sanırım GPIO pin'inde durum değişkliği olursa kullanılır.

Örnek
Tek bir file descriptor için şöyle yaparız.
int ret_poll= poll( &pollfd, 1, 10000 );  //10sec timeout

Örnek
Şöyle yaparız.
struct pollfd fds[1];
fds[0].fd = ...;
fds[0].events = POLLIN;

int pollrc = poll(fds, 1, poll_timeout); // blocks until data arrives or times out

if (pollrc < 0) { //Error
  ...
}
else if (pollrc == 0) //timeout
{
  ...
}
else if (pollrc > 0) {

  if ((fds[0].revents & POLLIN) == POLLIN) {
    ...
  }
}

Git Notlarım

Not :  Konuyla ilgili SVN Notlarım başlıklı yazıya göz atabilirsiniz.

Giriş
Git ile ilgili aldığım notlarım aşağıda. Mercurial'in Git'ten daha kolay olduğu da söyleniyor.

Git history'i ilelebet saklar.

Git Komutu Seçenekleri
checkout seçeneği
Açıklaması şöyle
> git checkout .
# checks out current directory
> git checkout ..
# Checks out parent directory, if in repository.
> git checkout ...
# Puts into detached head state?
> git checkout ....
error: pathspec '....' did not match any file(s) known to git.
Örnek
c'yi yeni bir branch olarak checkout etmek istersek şöyle yaparız.
$ git checkout -b mynewbranch c
Örnek
Açıklaması şöyle
Check out the files from the revision you want without checking out the revision itself
Şöyle yaparız.
git checkout some-other-commit -- .
clean seçeneği
Açıklaması şöyle
Delete untracked files, including ignored ones.
Şöyle yaparız.
git clean -fdx
clone seçeneği
Remote Repository'nin kopyası local repository olarak oluşturulur. Remote Repository iki branch'ten oluşuyor olabilir. Master ve develop.

Örnek
Şöyle yaparız
git clone https://github/com/something
Örnek
Bulunduğumuz dizine clone yapmak istersek şöyle yaparız.
git clone git@github.com:whatever .
Belli bir dizine clone yapmak istersek şöyle yaparız.
git clone git@github.com:whatever folder-name

commit seçeneği
Bu komut ile dosyalarımız local repository'ye gönderilir. Şöyle yaparız.
$ git commit -d "Your message"

fetch seçeneği
Bu komut ile remote repository'deki değişiklikler bizim repository'imize getirilir ama çakışma varsa merge edilmez.

fsck seçeneği
"file system check" anlamına gelir. Açıklaması şöyle
Git's hashing only happens at the time commits are created, and from there on the hashes are used to identify the commits. This in no way ensures the integrity of the files. Git repos can get corrupted and lose data. In fact, git has a built-in command to detect this kind of loss, git fsck, but as the documentation says, you are responsible for restoring any corrupted data from backups.
pull seçeneği
Bu komut ile remote repository'deki değişiklikler bizim repository'imize merge edilir.

Eğer değişiklikleri beğenmez ve eski haline getirmek istersek
git reset --hard HEAD komutunu çalıştırmak lazım.

push seçeneği
Yapılmış olan değişikliklerin remote'a gönderilmesi içindir. Şöyle yaparız
git push origin master
remove seçeneği
Açıklaması şöyle
Delete tracked files (don’t forget the git in front of this, rm -rf . is quite different)
Şöyle yaparız.
git rm -rf .
revert seçeneği
Head dışında kullanım şekli olabilirmi bilmiyorum. Head'den bir önceki sürümü alarak yeniden commitler. Elimizde şu sürüm olsun
a -> b -> c -> d(HEAD)
Şöyle yaparız
git revert HEAD
Elimizde şu geçer
a -> b-> c -> d -> e(HEAD)

Git Branching Modeli
Git Branching Modeli aşağıda

Hook
Post Commit Hook ile commit için gönderilen tüm dosyalar alındıktan sonra bir betik çalıştırılabilir.

--------------------------------------------------------------------------------------------------------------
Word Belgesi Sürümü Numarası

Her ne kadar svn veya git Word Belgesinin tarihçesini tutsa da, belgenin kapak sayfasına sürüm numarası yazmak gerekiyor. Bazı şirketlerde gördüğüm örnekler:

Belge henüz yayınlanmadıysa ve üzerinde çalışılıyorsa sürüm numarasına -(P1) -preliminary anlamına geliyor - yazılır. Belge resmi olarak yayınlandıktan sonra sürüm numarasındaki -(P1) kaldırılır ve sadece "-" yazılır.
Yani :
Version : -(P1) iken
Version : - haline gelir.

Carrier Sense Multiple Access With Collision Avoidance - CSMA/CA

Giriş
Açıklaması şöyle
IEEE 802.11 releases use CSMA/CA (Collision Avoidance) instead of CSMA/CD (Collision Detection) which is used in wired networks.

OFDM, on the other hand, is just an advanced digital modulation scheme which divides the data stream being exchanged between the node and the AP to multiple individual streams of lower rate and transmits them on different, closely-spaced carrier frequencies simultaneously (multiplexing). Making the signal more robust against error--thus allowing higher data rates--is what OFDM does in a nutshell.
Açıklaması şöyle
802.11 is half-duplex. This means that only once device can talk at a time, even with one client device, this means there are two devices that must share the "airtime" (i.e. number of timeslots available to transmit) when trying to transmit.
Hidden Node Problem
Açıklaması şöyle
Then "hidden-node-problem", which happens when the clients A & C are connected with the router B, but can't "hear" each other due to the distance between them (f.e. each of them is on the other side), so they are "listening" and don't hear anything (Also if the other client is sending) and therefore just send their data with a collision as a result.

Wifi

Wifi ne demek
Aslında Wifi hiç bir şeyin kısaltması değil. 1999 yılında uydurulan bir kelime.
Wi-Fi doesn't stand for anything. It is not an acronym. There is no meaning.
Wireless Fidelity kelimesi ise sonradan çıkarılmış.
The current confusion seems to stem from a brief period early in the days of the Wi-Fi Alliance when a regrettable tag line was added that stated, "The Standard for Wireless Fidelity." This was not part of the original name and was not created by Interbrand, but it was added as an afterthought in an attempt to help users make sense of the new and somewhat nonsensical word, "Wi-Fi."...
OSI Mimarisi
Wifi, 802.11 ailesine ait protokolleri kullanır. OSI mimarisinde Layer 1 ve Layer 2'yi tanımlar. Hızı Bluetooth'a göre çok daha fazladır.

Layer 3 ve üstünü tanımlamadığı için TCP ve diğer protokollerle gelen overhead yani header to payload ratio tanımlı değildir.

Wifi Layer 3 ve üstünü tanımlamasa bile Access Point "hotspot" olarak kullanılabilir. Yani ağa girmek isteyenlere DHCP ile IP adresi verebilir.

Dual band hem 2.4 hem de 5 GHz ile çalışabilen cihaz anlamına gelir. Bu cihazda iki tane alıcı/verici bulunur.

Wifi Her Yerde
Wifi çok enerji tükettiği için elektrik şebekesine bağlı cihazlarda tercih ediliyor. Pil ile çalışan akıllı cihazlarda tercih edilmiyor. Açıklaması şöyle
"Wi-Fi is a whole-home network,” says Chris Coley, principle engineer and architect with Logitech. Primarily used for media streaming, browsing the web, and other data-heavy activities, it’s a high-bandwidth network that’s power-intensive — just watch how fast your laptop battery dies when you’re watching a video on Netflix.
Many smart home products eschew Wi-Fi-connectivity because it would require their devices to have a dedicated power source or a long-lasting battery.
Wifi ilginç bir şekilde uçakların içinde yolcuların hizmetinde. Boeing 787'de araca (802.11 b/g) bazı yazılım bileşenlerini ve Electronic Flight Bag bilgisini yüklemek için kullanılıyor.

2.4 GHz
Wifi 2.4 GHz taşıyıcı frekansını kullanır. Yani 2.4 GHz ve 2.5 GHz aralığındadır. Bandın dalgaboyu 12.5 cm civarındadır. Kanallar arasındaki aralık (Channal Spacing) 5 MHz büyüklüğündedir.
Bant 14 kanala bölünmüştür. Her kanalın genişliği 22MHz'dir. Dolayısıyla bazı kanallar üst üste binerler. Birbirleri ile hiç çakışmayan kanallar 1,6,11 ve 14'tür. Aşağıdaki şekilde 1,6, ve 11 koyu renk ile gösteriliyor.



Guard Boşluğu
22 MHz genişliğin sadece 20MHz'si veri taşır. 2MHz guard içindir. Açıklaması şöyle
Wifi Channel 6 is centered at 2437Mhz and is 22Mhz large, so ranging from 2426 to 2448 as you stated (well that would rather be 23Mhz large, so not sure if it is 2427-2448 or 2426-2447).

But data is actually transmitted along a 20 MHz bandwidth, the remaining 2Mhz are used as a guard band so there's enough attenuation along the edge channel.

So there's no data transmitted at 2426 Mhz when using Wifi Channels 1 or 6 (1, 6 and 11 are the most used since they are non-overlapping)

List of WLAN channels bağlantısında bant genişliği görsel ve tablo olarak bulunabilir. Diğer özellikleri şöyle.
  • indoor range: 15m
  • outdoor range: 40m
  • frequency: 2.4GHz
  • power consumption: 100mW
  • throughput: 5Mbps
5 GHz
Kanallar arasındaki aralık (Channal Spacing) 20 MHz büyüklüğündedir. 5 GHZ aralığındaki U-NII-2B bandı (5350- 5470) kullanılmaz.

Neden Bluetooth ve Wifi 2.4 GHz'yi Kullanıyor?
2.4 GHz Industrial, Scientific and Scientific (ISM) bandıdır. Bu bandın lisansı yoktur ve dünyanın her yerinde kullanımı serbesttir. WiMax ise özel izne tabi frekansları kullanır. Açıklaması şöyle
WiMax operates in spectra that needs to be licensed from the FCC (or the corresponding body if you're not in the US). Depending on the frequency in use the licensing process may- or may not- be an issue, but it's not a situation where you can simply buy the gear and start using it the same day.

In contrast, the 802.11 standards operate in unlicensed frequencies and don't require a special license.

Wifi Modülasyon
Modülasyonu anlatan basit bir şekil şöyle

Wifi Sağlığa Zararlı mı ?
Wifi non-ionasing radition denilen dalga türünde. Kullandığı dalga boyu itibariyle mutfaktaki mikrodalga cihazına ve cep telefonlarına yakın. Bu tür dalgalar ısınma etkisi yaratıyor. Wifi sinyalinin enerjisi düşük olduğu için ısınma etkisi az ama ölçülebilir. Sağlığa zarar verip vermediği, veriyorsa ne kadar verdiği halen araştırılıyor. Burada ve burada linkler var.

CSMA/CA
CSMA/CA yazısına taşıdım.

Wifi Regular Mode veya Infrastructure Mode
A (STA - Station) ve B konuşmak isterse, A önce paketi Access Point'e (AP) gönderir. AP daha sonra B'ye gönderir. Paketin multicast veya broadcast olması fark etmez. Tüm paketler AP üzerinden geçer. Açıklaması şöyle
The CSMA/CA algorithm requires the AP to "coordinate" all the clients. If clients talked with other APs or with each other, it would be impossible to prevent interference.
Açıklaması şöyle
Wi-Fi has an infrastructure mode, where all frames must pass through the WAP, and an ad hoc mode, where frames are sent directly to another host. You must use one or the other.

Wifi Promiscuous Mode
Wifi cihazını bu moda geçirirsek cihaz ağa dahil olur yani STA kabul edilir ve duyabildiği tüm paketleri okuyabiliriz.

Wifi Monitor Mode
Wifi cihazı ağa dahil olmadan tüm paketleri okuyabilir. Paketler muhtemelen şifreli olacaktır.

Wifi Multicast
Henüz gerçek anlamda multicast yok. Multicast olarak gönderilen mesajlar, AP tarafından unicast olarak dağıtılır. 802.11aa ile multicast kullanıma girecek. Açıklaması şöyle
Unfortunately, multicast or broadcast on Wi-Fi is a problem. Your WAP will send multicast and broadcast at the lowest possible rate. This is part of the Wi-Fi standard. There is a proposed standard that is supposed to fix some of the problems with multicast on Wi-Fi, but nothing currently supports it, as far as I can tell.

For example, if you have a WAP that supports 802.11b , it will send multicast traffic at 1 Mbps.
...
From the perspective of layer-2 (what the WAP works with), you don't have many options for prioritizing traffic. The WAP, like a switch, does not look at the packets, only the frames. It doesn't matter what marking you have on the packets if the devices doesn't look at the packets in order to treat the packets differently.
SSID Nedir
Açıklaması şöyle. Ağı belirten isim anlamına gelir.
The Service Set Identifier (SSID) defines what is thought of as the wireless network. So if you have an SSID that is called Apple and your neighbor’s SSID is called Orange, people can connect to either the Apple or Orange wireless network.

BSSID Nedir
Açıklaması şöyle. Aynı ağ içinde farklı Access Point'leri belirtmek için kullanılır.
Most often, there are different BSSIDs on an access point for each WLAN configured on a radio. ...
Wifi'da kullanılan Mesajlar Nelerdir
Management Frame, Control Frame ve Data Frame olmak üzere 3 tip frame var.

Management Frame'ler şöyle
1.Authentication frame
2.Association request frame
3.Association response frame
4.Beacon frame
5.Deauthentication frame
6.Disassociation frame
7.Probe request frame
8.Probe response frame
9.Reassociation request frame
10.Reassociation response frame

Control Frame'ler şöyle
1. Request to Send (RTS) frames
2. Clear to Send (CTS) frames
3. Acknowledgement (ACK) frames

Data Frame şöyle
1. Data Frame

1. Authentication Frame Nedir - Management Frame
Bu frame Network Access Control başlığı altına giren Network Admission Control (Cisco. Artık kullanılmıyor) ve Network Access Protection (Microsoft) uygulamaları ile bir şekilde alakalı.

4. Beacon Frame Nedir - Management Frame
802.11 standardında bir access point'i bulmak için iki yöntem tanımlı. 802.11 Layer 2'ye kadar tanımlı olduğu için access point'in IP adresini bulmak mümkün değil.

İlki beacon frame paketinin dinlenmesi. Bu paket Access Point tarafından her 100 milisaniyede bir gönderilir. SSDI, kripto yöntemi, veri hızı, timestamp gibi bilgileri içerir. 11 kanal varsa ve her kanal için beacon frame dinlenirse tüm erişim noktalarını bulmak biraz vakit alabilir.

Beacon içindeki timestamp alanı sayesinden dinleyen taraf bir sonraki beacon'ın ne zaman geleceğini bilir.

5. Deauthentication Nedir - Management Frame
Wifi kapanırken, kendisini dinleyenlere bunu bildirmek için deauth paketleri gönderir. Bu frame'i göndererek Evil Twin saldırı yapılabilir. Bu saldırının açıklaması şöyle
Basically the attacker creates a network that mimics yours so you (or your machine all by itself) connect to that instead. He achieves that by sending de-auth packets to your router so you have to reconnect. By changing the MAC-Address of his own router to the one of yours, your computer automatically connects to the attackers network instead (given that its signal is stronger). This allows the attacker to further harm you by Man-In-The-Middle Attacks or a fake DNS that redirects common websites to phishing sites.

6. Disassociation Frame - Management Frame
Açıklaması şöyle
It's absoloutely possible to Jam a wifi connection such as triggering deassociation from the AP.

7. Probe Request Frame Nedir - Management Frame
İkinci yöntem ise probe request gönderilerek, access point'in sorgulanması. Yani telefonumuz bir mesajı gönderir. Probe isteği boş ("Hey, is anybody out there?") veya isteğinde daha önce bağlanılmış SSID isimleri ("Hey, is Bob out there?") olabilir.

8. Probe Response Frame Nedir - Management Frame
Telefon tarafından gönderilen Probe Request Frame mesajına karşılık olarak Access Point tarafından gönderilir.

9. Reassociation request frame - Management Frame
Açıklaması şöyle
Re-associations by existing devices (e.g.: coming out of hibernation, roaming from other APs etc) would appear identical to a new device joining.
10. Reassociation response frame - Management Frame
Association ve reassociation response frame'leri wireshark'ta görmek için şöyle yaparız.
wlan.fc.type_subtype == 0x01 || wlan.fc.type_subtype == 0x03
Data Frame
802.11 her türlü zorlu koşulda çalışmak üzere tasarlanmıştır. Bu yüzden Her data frame için acknowledgement bekler. Aynı TCP gibi acknowledgement alınmayan frame'ler bir daha gönderilir. Online oyun oynayanlar için wifi kötü bir seçim olabilir. Eğer gönderilen paket broadcast ise sadece Access Point, ACK gönderir. Geri kalan alıcılar ACK göndermezler.

Request To Sent - Control Frame
Açıklaması şöyle
If you lower RTS threshold value too much, you can introduce more latency into the network, as Requests to Send are increased so much that the shared medium is reserved more often than necessary
802 Sayısı Nereden Geliyor.?
802 LAN/MAN Standartları komitesi için kullanılan numara. Faal şu komiteler var. Bunun dışında kapatılmış ve 802 ile başlayan başka komiteler de mevcut.

  • 802.1 Higher Layer LAN Protocols Working Group
  • 802.3 Ethernet Working Group
  • 802.11 Wireless LAN Working Group
  • 802.15 Wireless Personal Area Network (WPAN) Working Group
  • 802.16 Broadband Wireless Access Working Group
  • 802.18 Radio Regulatory TAG
  • 802.19 Wireless Coexistence Working Group
  • 802.21 Media Independent Handover Services Working Group
  • 802.22 Wireless Regional Area Networks
  • 802.24 Vertical Applications TAG
  • 802 5G/IMT-2020 Standing Committee


802.11 Ailesi
Ailenin tarihçesi şöyle

802.11a
1999 yılında çıktı. Sadece 5 GHz'de OFDM ile çalışır. Teoride 54, pratikte ise 20 Mbps civarında throughput verir.

802.11b
1999 yılında 802.11a ile beraber çıktı. 2.7 GHz'de çalışır. 11 Mbps civarında throughput verir. Bu cihazların daha yeni cihazları da yavaşlattıkları söyleniyor.

802.11g
2003 yılında çıktı. Sadece 2.4 GHz'de OFDM ile çalışır. 54 Mbps civarında throughput verir. Açıklaması şöyle
Older devices, such as 802.11g, these did not use MIMO. When these devices had two antennas, it was for diversity. In other words, it only used one antenna, but it could switch between which antenna it used to try to get a better signal.
802.11n
2009 yılında çıktı. 2.4 (opsiyonel) ve 5 GHz'de OFDM ile çalışır. 300 Mbps civarında throughput verir. 802.11n zaten 802.11a aynı frekansı kullandığı için birlikte çalışır. Eğer cihaz dual band ise 802.11g ile de çalışabilir.

802.11n standardının en önemli parçalarından birisi Multiple Input and Multiple Output yani MIMO'dur. MIMO wifi cihazlar çift anten kullandıkları için bağlanan cihaza göre sinyali en kaliteli seviyeye getirebilirler. Açıklaması şöyle
802.11n access points make use of MIMO and multiple spatial streams. As such, each antenna is dedicated to one spatial stream (i.e. antenna 1 = first spatial stream, antenna 2 = second spatial stream, etc). The second spatial stream is only used in conjunction with the first spatial stream at higher data rates, it doesn't function independently.


802.11ac
2011 yılında çıktı. 5 GHz'de çalışır. 1 Gbps civarında throughput verir.

802.11 ve Şifreleme
Bu ailede frame'in zarf alanları (header) şifreli değildir. Sadece taşınan veri şifrelenir. Verinin şifrelin olduğu 802.11 Mac Frame Header zarfındaki Frame Control alanında Protected Frame Bit alanında belirtilir

802.11 ve Doğrulama

WEP
2004 yılından itibaren yeterince güvenliği olmadığı için kullanılmıyor.

TKIP
WEP'ten daha sonra geliştirilmiştir. WPA kullanmayan eski cihazlarda kullanılır.

WPA/WPA2
Burada bir açıklama var ama ne olduğunu anlamadım.

Bu doğrulama yöntemini kullanmak gerekir. WPA2 presharekey (PSK) oluşturmak için şu formülü kullanır.
psk = PBKDF2 (HMAC−SHA1, passphrase, ssid, 4096, 256)
Formülde şifrenin de (passpharese) de girdi olduğu görülebilir.

Doğrulama için four-way handshake kullanılır.
In WPA2-PSK, both the station and the AP have to prove that they know the passphrase in the four-way handshake.
Krack saldırısı four-way handshake'in 3. mesajı ile yapılıyor. Açıklaması şöyle. Bu açığı IEEE'in çalışma şekline bağlayanlar da var.
When a client joins a network, it [...] will install this key after receiving message 3 of the 4-way handshake. Once the key is installed, it will be used to encrypt normal data frames using an encryption protocol. However, because messages may be lost or dropped, the Access Point (AP) will retransmit message 3 if it did not receive an appropriate response as acknowledgment. [...] Each time it receives this message, it will reinstall the same encryption key, and thereby reset the incremental transmit packet number (nonce) and receive replay counter used by the encryption protocol. We show that an attacker can force these nonce resets by collecting and replaying retransmissions of message 3 of the 4-way handshake. By forcing nonce reuse in this manner, the encryption protocol can be attacked, e.g., packets can be replayed, decrypted, and/or forged.

802.11 ve Frame Yapısı
802.11 Mac Frame Header yazısına taşıdım.

17 Ekim 2017 Salı

DOORS

DOORS Notları
Aşağıda DOORS ile ilgili notlarım mevcut.

Baseline (Anahat)
Module ile ilgili işlemle için şöyle yaparız.

File > Baseline > New : Yeni baseline yaratır
File > Baseline > View : Eski baseline'ları görebilmeyi sağlar.

Open > Read-only veya Shareable Edit veya Exclusive Edit

View
Bir çok view açılabilir. Örnek view'lar
Verification view : Gereksinim ve nasıl doğrulanacağı
Traceability view : Gereksinim ve izlenebilirliği
Verification level view : Gereksinimin hangi aşamada doğrulanacağı

Link Kurmak
Link > Create Link'e tıklanır.
Target seçilir
Link module seçilir.
Linki silmek için Source Linke gidilir. Properties'e basılır ve Link sekmesinden Delete seçilir.

Database Menüleri

Favorites Combobox
Doors Database ekranında bu menü kullanılarak bir modüle kısayol konulabilir.

Modül Menüleri

File/Export Menüsü
Word'e Aktarım için kullanılabilir.

1. Tümüyle Aktarım
Doors 8.1 ile gereksinimleri Word  dokümanına aktarmak için araç çubuğundaki Word simgesine tıklanır. Açılan pencereden "Layout" olarak "Table" seçilir ve gereksinimler Word belgesine aktarılır.
Export işleminde normal.dot template kullanılıyor. Bu template tabloları kırparak gösterebilir. Word belgesinde Page Layout/Margins/Narrow seçilerek tablo daha iyi gösterilebilir. Ayrıca Word belgesinden pdf belgesine de aktarmak mümkün.

2. Kısmi Aktarım
Filtereleyerek aktarım için önce "Filter Properties" tıklanır. Açılan pencereden "Objects" sekmesi seçilir. "Include current object" seçilerek "Apply" düğmesi tıklanır. Böylece sadece bir başlık ve altındaki her şey gösterilmiş olur. Bu başlık Word'e aktarılırsa kısmı bir doküman çıkarmak mümkün olur.

File/Import Menüsü
RTF formatındaki Word dokümanı import edilebilir. RTF dosyası seçildikten sonra açılan penceredeki sol taraf RTF dosyasındaki heading'in Doors modülünde hangi heading'in altına geleceğini belirtir.
Word Heading 1 -> Doors Heading 3 yaparsam Doors'ta seçili olan Heading 3'ün altına import ederim.

Edit/Attributes Menüsü
New düğmesine tıklayarak yeni Attribute tanımlanabilir. Projelerde sonradan tanımlandığını gördüğüm bazı attribute'lar şöyle

IsRequirement = true,false
Verification Level =
Verification Method =
Use Case ID =


Edit/Columns Menüsü
Bir projedeki sütunlar şöyleydi.
1. ID
2. Documentation

Tools/Filter/Define Menüsü


Bu menü ile "Filter Properties" düğmesi aynı işi yapar. Sadece belli bir başlığı ve altındakileri görmek istersek  açılan pencereden "Objects" sekmesi seçilir. "Include current object" seçilerek "Apply" düğmesi tıklanır. Böylece sadece bir başlık ve altındaki her şey gösterilmiş olur.


Klavye Kısayolları
Object ID'ye gitmek : Ctrl + G ile belirtilen numaraya gidilir.
Yeni Object Girmek : Ctrl + Enter ile yeni satır yaratılır.
"New Object At This Level" simgesi ile aynıdır. Daha sonra "Edit Object Text" ile metin girilir.

Object'i Text Yapmak : Ctrl + T ile başlık metin haline gelir.
Yeni Object Girmeyi Bitirmek : Ctrl + M ile yazılmakta olan hücreden çıkılır. Yazma işlemi biter
Object'i Silmek : Del seçili satırı siler. Eğer silme hakkı yoksa şu hatayı alırız.
"cannot delete - You do not have sufficient access to delete the object."

Renkler
Kırmızı : Kaydedilmemiş satır
Sarı : Kaydedilmiş ama baseline alınmamış satır
Gri : Salt okunur satır

Başka Object'e Giden Linki Takip Etmeke
Doors'ta sağ taraftaki dışarı bakan kırmızı oka tıklanınca seçili maddenin başka bir belgedeki hangi maddeden kaynaklandığı görülebilir. (out link)

Dizin Yapısı
Doors dizinleri aşağıdaki gibi Sistem ve Yazılım ayrımını gösterecek şekilde olabilir.
Software/SSS/XXX
Software/SRS/YYY
Requirement Numarası
Sıralı gider. Silinen requirement "deleted" olarak işaretlenir. Yani şöyledir.
1. ...
2...
3.. (deleted)
4...

Sürükle Bırak
Taşınacak nesneye sol fare tuşu ile basılır. Tuş bırakılmadan hedef üzerine gelinir. Tuş bırakılınca hedefin altına veya içine taşı menüsü çıkar ve uygun olan seçilir.

Doors'u Şifre Girmeden Çalıştırmak
-d databasename -u username -p password seçenekleri  kullanılır. Örnek:
"C:\Program Files (x86)\Telelogic\DOORS_8.1\bin\doors.exe" -d databasename -u username -p password

DXL
Doors için scripting yapabilme imkanı tanır. C'ye benzer. Açılımı Doors Extension Language. 

$DOORS_HOME/lib/dxl/addins/user altına konulan dxl dosyaları User menüsünde görülebilir.

Aşağıda bazı örnekler var. Bu dil büyük küçük harf farkına hassas değildir. (case insensitive) Bir değişkeni tipini tanımlamaya gerek kalmadan kolayca i =5 yazabiliriz.

Modulu Dolaşan Kod
string modulePath = "/Path/..."
string viewName = "MyView"
Module m = read (modulePath,true)
if (m != null)
{
  bool success = load (m,view (viewName))
  if (success)
  {
    Object o
     for o in m do
     {
        print o."Last Modified By" "\n"
     }
  }
  else
  {
    print "Could not load view" viewName
  } 
}
else
{
 print "Could not open view" modulePath
}

DXL ile If Koşulu
if (null current Module) {
 ack "Hata"
 halt
}
Hata Kutusu Çıkartma
string mesaj = "Hata mesajı\n. Hata açıklaması"
ack mesaj
halt
Dosya Dizini Alan Kutu 
DB dlgBox = create ("Input Box"//Formu başlık ile yarat
fileName (dlgBox,"Choose file","*.txt","Text Files"//Forma widget ekle

void okClick (DB dlgBox) {...}//Click handler
realize dlgBox
show dlgBox //Formu göster

Modul'e Ait Attribute Bulma

AttrDef attr1 = find (current Module, "Attr1")
if (null attr1) {
 halt
}
Stream
Stream ofstream;
ofstream = write ("C:\\file.txt")
ofstream << "test" nl