CBS projeleri düzenlemek? [kapalı]


27

Proje dosyalarımı düzenli tutmak için uzun zamandır mücadele ediyorum.

Veri kümelerinizi, resimlerinizi, şekil dosyalarınızı vs. düzenli tutmak için ipuçları nelerdir?


2
Bu [soru] [1] 'a verilen cevaplara da bakınız. [1]: gis.stackexchange.com/questions/2976/…
jonatr

Yanıtlar:


36

Not: Bu rant gittikçe güncellenecek

Hiçbir şekilde bilgisayar ya da ArcGIS pro değilim, ama işte yaptığım şey:

Temel Dosyalar / DBS

  • Bunlar, doğada "ham" olan ve tüm analizlerimin temelini oluşturan dosyalar.
  • Bu dosyalar, veri tabanları ve veri barındırılan dışında benim bir projectsklasöre ve benim internet sunucusu, yerel bilgisayar ve dropbox barındırılmaktadır. Onlara her zaman erişebiliyorum ve çok düzenli, ayrık ve toplanmışlar. Bunları organize etmek için çok zaman harcayacaksınız.
  • Hepsini Arc ya da PostGIS de veri tabanlarına koydum.
  • Her tabloya, tablonun kendisine veya meta verisine 3 alan eklerim: DATE_OBTAINED, DATA_DATE, SOURCE_NOTES
  • Ayrıca Temel dosyalar, diğer birçok tablonun sorguları olabilir. Örneğin, bir tablo, elde ettiğim tüm trafik sayısını büyük bir sorguda / tabloda toplayabilir.
  • Ayrıca interneti araştırırken bulduğum tüm verileri buraya koydum.
  • TABAN DOSYALARINDA DOSYALARIN HERHANGİ BİR DOĞRUDAN ANALİZ YAPMAYIN

Proje Dosyaları

  • Bütün proje dosyalarım bir my_projectsklasöre gidiyor . Bu projeyle ilgili her şeyi olduğu gibi içeriyor, eğer o klasörü başka bir yere kopyalayıp yapıştırırsam her şeyi içerecektir.
  • Genellikle aşağıdaki yapıya sahibim:
    • Projem/
      • admin /
      • iletişim/
      • işlenmemiş veri/
      • analyzed_data /
      • output_data /
      • from_client /
      • NİHAİ /
      • kodu /
      • some_document_date_time.doc
      • BENİOKU
  • Yavaş yavaş yerel bir GIT'e taşınıyorum. (yerel olarak veya kendi sunucunuzda bile barındırabilirsiniz). GitHub’a koymamamın nedeni, github’ın CBS analizi için kullanışsız olan 1.2GB sınırına sahip olmasıdır.
  • Projelerim için, analizim için ihtiyaç duyduğum tüm GIS tablolarını yeni bir db: project_whatever'e kopyalarım.
  • 10 üzerinden 9 kez, ben shp dosyalarında sadece çalışmak ve kız kardeşime karşı tüm CBS (resim, excel, koordinatları, vs) kaydedebilir projects/my_project/raw_data, projects/my_projects/analyzed_datave projects/my_projects/output_data.
  • Bir proje tamamlandığında, teslim edilen son nüshayı my_projects/FINAL/date_submitted
  • Benim MXD için, genellikle yeni MXD için her 2 ya da 3 saat kaydetmek my_proj_dec_22_11__13_20.mxdörneğin
  • Ms Word belgeleri, çizim ve çoğunlukla düzenleme belgeler için, onlar gibi klasör my_projects gitmek RFP_TENDER_Dec_22_11__11_15.docve draft_ver5_Dec_31_11__12_30.doc. Yine tüm son çıktılarım FINAL klasörüne giriyor
  • R, Python kodu ve bazı C # için, projenin dışında barındırdığım için ancak my_projects/codeklasöre çalışan bir kopya ile biraz zorlaşıyor . Bunu python kodunun çoğu yeniden kullanılabildiği için yapıyorum. Tüm python kodunuzu projelerin yanına koyarsanız, onları unutursunuz. Ayrıca, tüm python kodum github'da devam ediyor.
  • Bana göre proje dosyaları arasında zaman takibi, iletişim (tüm e-postalarımı .msg dosyaları olarak kaydederim), tüm sözel iletişimimizi bir kelime dosyasına kaydederim ve tüm bu dosyaları my_project / communication olarak koyarım
  • ArcGIS Modelleri kullanın, LYR ve "seçimi yeni bir shp katmanı olarak kaydedin". Bu araçlar, dosyaları daha küçük biçimlerde saklamayı, dosyaları yeniden kullanmayı ve modellerle başka bir yerde bir şey kullanabilmeyi kolaylaştıracaktır.

Nihai Çıktı

  • Tamamlandığında her proje sıkıştırılır ve harici sabit diskimi kullanır.
  • Tüm nihai ürünler, Tablolardaki dosyalara ve diğer tüm formatlardaki PDF'ye dönüştürülür.
  • Yaptığım her proje basılı kopya yedekleme için basılıyor

Alt çizgi

  • Her insan birden fazla ve farklı yazılım ve araçlar kullanır. Tanıdığım bir çok insan basecamp , Harvest veya başka birçok araç kullanarak örgütlendi . Ayrıca, insanların farklı çalışma alışkanlıkları ve OKB eğilimleri vardır. Bir şeyleri organize etmeyi, belki de diğerlerinden biraz daha fazla tutmaya gayret ediyorum. Bu yüzden, size en az strese neden olan sistemi geliştirirken, uygulamada ve güncellemede tutarlı olacağınızı garanti altına alın.
  • Her şeyi yedekle ve çoğalt
  • Doğrudan ham / temel verileriniz üzerinde çalışma
  • Projeleriniz için veriler zaman içinde değiştiği için her zaman bir çoğaltma dosyası kullanın ve bulmak için çabalıyor olmak istemezsiniz base_layer_2006.shp.
  • Her bir my_projects klasörünün , 2 yıl boyunca projeyi ziyaret ettiğinizde daha sonra unutacağınız bazı temel bilgileri vermek için projeleri yaparken düzenleyeceğiniz bir README metin dosyasına sahip olması gerekir.

Çok iyi. Tüm veri kümelerinizin kopyalarını (işlenmemiş, analiz edilmiş) ve bunun kapladığı alanı oluşturmaktan endişe duymuyorsunuz.
dchaboya

2
@ Dchaboya disk alanı maliyeti ben tasarruf stres düzeyine göre nispeten düşüktür. Ayrıca hiçbir şeyi silmeye inanmıyorum .
dassouki

Github sınırlandırmasının neden önemli olduğunu merak ettim. Git'i her şey için mi kullanıyorsun, kodsuz mu? Sürüm kontrolünü aynı amaçlar için kullanmaya ve iyi uygulamaları öğrenmeye çalışıyorum.
djq

@dassouki, git kullandığınızda neden mxd dosyalarının yeni versiyonlarını yaratıyorsunuz? Ayrıca bu mxd dosyalarını da kontrol edebilirsiniz.
Paul Hiemstra

@PaulHiemstra Çoğunlukla, aynı anda birden fazla sürüm açmak benim için daha kolay.
dassouki

8

Sadece Desktop GIS yazılımı ile çalıştığınızı söylemediniz, bu yüzden bazı deneyimlerimi programlama yönelimli zihniyetle paylaşacağım. İlk olarak, @dassouki'nin söylediği şeyleri kabul ettiğimi söyleyerek başlayayım. Bence en önemli şey nasıl organize ettiğiniz değil, bunu yaptığınız.

Ama iş akışıma devam etmek için. Bir programlama dili kullanmaktan hoşlandığım şey (benim durumumda R) yazdığım senaryo, attığım tüm adımları belgeler. Bu, bir kullanıcının ham girdi verilerinden bir mxd dosyasında görebildiğinize nasıl geçtiğini görmenin daha zor olduğunu düşündüğüm ArcGIS'i kullanmaktan farklı. Elbette, GUI'de attığınız tüm adımların bir kaydını tutabilirsiniz, ancak bence bir programlama dili, attığınız iş akışını kurtarmak için çok daha fazla yarar sağlar. Bu, özellikle bir müşteri / süpervizör bir şeyi nasıl yaptığınızı veya tam olarak belirli bir ürün üretmek için ne yaptığınızı sorduğunda önemli olabilir.

Bu yüzden pratikte sürücümde önemli olan birkaç klasörüm var (bir bilim adamı olduğumu unutmayın):

  • Deneyler, burada yaptığım bütün deneyleri saklıyorum, örneğin belirli bir veri kütlesi üzerinde belirli bir analiz yapmaya çalışıyorum. Her deney kendi dizinine sahiptir. Ayrıca sonuç tablolarını ve benzerlerini burada saklarım. Tüm R betiklerim bu dizinde.
  • Veri kümeleri, tüm ham veri kümelerimden ayrı depolanır.
  • Araçlar, başka bir projede yeniden kullanmak üzere genelleştirdiğim kodları sakladığım ayrı bir dizine sahibim.
  • Belgeler, çalışmalarım bilimsel yazılar yazıyor. Her kağıt için, Lateks dosyalarımı sakladığım ayrı bir dizim var. Bu dosyalar deneyler dizinindeki çizimleri ve tabloları okur. Bir kağıt birkaç illüstrasyon içerebilir.
  • yazılımı, ayrı bir dizinde yazılımı saklarım, çoğunlukla yazdığım R paketleri ve bazı çalıştırmak için bazı kodları derlerim.

Kullandığım bazı temel fikirler:

  • Ayrı (nispeten) statik form dinamik öğeler: örneğin, genelleştirilmiş komut dosyalarını kısa projelerden tasarruf ettiğiniz yerden farklı bir yere kaydetmek. Veya ham verilerinizi analizlerinizden bunlardan ayırın.
  • Yapabildiğiniz yerde sürüm yönetim yazılımı kullanın. Ben mercurial ve git'i severim.
  • YEDEKLERİNİZİ OTOMATİN !!!! Bunları manuel olarak yaptığınızda onları asla düşünemezsiniz ve ardından sabit sürücünüz çöker. Linux altında bu tür bir otomasyon kolaydır. Bunun Windows / Mac altında nasıl olduğundan emin değilim.

Genel olarak bir programlama dili kullanmayı seviyorum, çünkü bir komut dosyasında ham verilerden elde edilen resimlere / tablolara gidebilirsiniz. R oldukça iyi bir aday çünkü GIS verilerini kolayca okuyup yazabiliyor ve hem CBS hem de istatistik üzerinde bir ton analiz bulunuyor.


1
Yedeklemeleri otomatikleştirme hakkında +1. Bu yüzden klasörlerimi dropbox'a
kopyaladım

3
Dropbox ihtiyacınız olan depolama türüne sahip mi? Değerli çalışmanızı bir dış firmanın ellerine almak konusunda ne düşünüyorsunuz?
Paul Hiemstra

3

Sadece yukarıdaki cevaba eklemek istiyorum - 2 şey.

  1. İçe aktarma ham veri dizinindeki klasörlerin (her veri kümesinin alındığı klasörler - yani from_clientname-2011dec23) olmasını istiyorum. Bu şekilde, projede kullanılan her veri parçasını aldığımda geri izleyebilirim.

  2. Ayrıca hareket halindeyken katlanacak bir proje belgesine sahip olmaktan da hoşlanıyorum - daha sonra burada bir kelime belgesi veya basit bir TXT dosyası oluşturabilirim, proje hakkında yaptığım şeyi, tarihi ve kimin istediğini yazabilirim. Bu yüzden geri dönüp kendimi koruyabilirim, neden bir şey yaptığımı sorduğum birileri var. Bu küçük istekler için can sıkıcı gelebilir, ancak sonunda sizi kurtarabilir.


1
Bu kesinlikle Proje Yönetimi 101 malzemesidir. Her ne kadar bir projeye harcadığınız zamanın iyi bir kısmı her şeyin düzenli ve iyi bir şekilde belgelenmesini sağlamak için ayrılmış olsa da, sonuçta bu, potansiyel olarak size zaman kazandırabilir ve yaşam beklentinizin azalmasını önler.
dchaboya
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.