devel-ideal-proj.rst
changeset 1334 9bf0d5a1f0cf
child 1416 f994292b3721
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/devel-ideal-proj.rst	Fri Jul 13 22:32:19 2012 +0300
@@ -0,0 +1,95 @@
+.. -*- coding: utf-8; -*-
+.. include:: HEADER.rst
+
+======================================
+ Ideal softwaare development project.
+======================================
+.. contents::
+
+About ideal software development model.
+=======================================
+
+This file mainly discuss about open source software project.
+
+Open source.
+============
+
+Open source software project have freedom how develop project and which
+development toolchains use.
+
+Close source.
+=============
+
+Close source projects have proprietary nature because of:
+
+ * interest to make money (another parties can not easily reproduce project or
+   steal realisation ideas/code, allowing another party get same product and get
+   company money)
+ * low code quality (to stop stain company good name or to stop malicious
+   attacks based on code analysis)
+ * security consideration (to hide protocols and data format to make harder
+   malicious attack)
+ * business model (closed data formats allow vendor lock)
+
+Disadvantage of closed source project (in many case):
+
+ * you can not directly contact with developers (only through support)
+ * low support quality
+ * paid support (and you have no enough money)
+ * can not access to product bug tracing system (you only can submit bug via
+   crash report application or technical support, publicly appear internal bug
+   tracing can damage product reputation
+
+Component of software project.
+==============================
+
+ * Src (sources).
+ * Doc (documentation).
+ * VCS (version control system).
+ * BTS (bug tracking).
+ * News (project news/history/changelog).
+
+Project home page.
+==================
+
+Project home page must provide:
+
+ * project name
+ * short info about project goal
+ * project license
+ * current project status
+ * links to binary release
+ * links to source release, how to get latest source from VCS
+ * links to online/printed docs
+ * how report bug (BUGS)
+ * where send patch
+ * contact info
+
+Additionally:
+
+ * help welcome, requirement to join to project
+ * mail/news list for users/developers, how to subscribe/unsubscribe, where
+   find archive, how search for keyword in archive
+ * project history (NEWS, ChangeLog)
+ * project policy (HACKING)
+ * how build project (README, INSTALL)
+ * list of contributor with contact info (MAINTAINERS, AUTHORS)
+ * who use project
+
+Docs.
+=====
+
+TODO
+
+VCS.
+====
+
+TAGS: VCS, version control system, SCM, source code management, DVCS,
+      distributed version control system.
+
+ * CVS
+ * SVN
+ * Mercurial (hg)
+ * git
+ * bazaar
+