User Tools

Site Tools


century:principles_of_software_engineering

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
century:principles_of_software_engineering [2012/07/24 16:32] mithatcentury:principles_of_software_engineering [2012/07/24 18:54] – [Principles of Software Engineering] mithat
Line 3: Line 3:
 ====== Principles of Software Engineering ====== ====== Principles of Software Engineering ======
 Mithat Konar\\  Mithat Konar\\ 
-July 23, 2012+July 24, 2012
  
 ===== Adapted from ===== ===== Adapted from =====
- +[[http://www.pearsonhighered.com/pearsonhigheredus/educator/product/products_detail.page?isbn=0133056996|{{:century:fundamentals-swe-cover.jpg?150 |}}]]Ghezzi, Carlo, Mehdi Jazayeri, and Dino Mandrioli. "[[http://www.pearsonhighered.com/pearsonhigheredus/educator/product/products_detail.page?isbn=0133056996|Software Engineering Principles]]." In //Fundamentals of Software Engineering//. 2nd ed. Upper Saddle River, N.J.: Prentice Hall, 2003. 41-66.
-  * Ghezzi, Carlo, Mehdi Jazayeri, and Dino Mandrioli. "[[http://www.pearsonhighered.com/pearsonhigheredus/educator/product/products_detail.page?isbn=0133056996|Software Engineering Principles]]." In //Fundamentals of Software Engineering//. 2nd ed. Upper Saddle River, N.J.: Prentice Hall, 2003. 41-66.+
  
 ===== Introduction ===== ===== Introduction =====
Line 41: Line 40:
  
 ===== The principles ===== ===== The principles =====
-  * **Rigor and formality** +  * **Rigor and formality**
   * Separation of concerns   * Separation of concerns
   * Modularity   * Modularity
Line 70: Line 69:
 ===== The principles ===== ===== The principles =====
   * Rigor and formality   * Rigor and formality
-  * **Separation of concerns** +  * **Separation of concerns**
   * Modularity   * Modularity
   * Abstraction   * Abstraction
Line 100: Line 99:
   * Rigor and formality   * Rigor and formality
   * Separation of concerns   * Separation of concerns
-  * **Modularity** +  * **Modularity**
   * Abstraction   * Abstraction
   * Anticipation of change   * Anticipation of change
Line 126: Line 125:
   * Separation of concerns   * Separation of concerns
   * Modularity   * Modularity
-  * **Abstraction** +  * **Abstraction**
   * Anticipation of change   * Anticipation of change
   * Generality   * Generality
Line 156: Line 155:
   * Modularity   * Modularity
   * Abstraction   * Abstraction
-  * **Anticipation of change** +  * **Anticipation of change**
   * Generality   * Generality
   * Incremantality   * Incremantality
Line 172: Line 171:
   * Abstraction   * Abstraction
   * Anticipation of change   * Anticipation of change
-  * **Generality** +  * **Generality**
   * Incremantality   * Incremantality
  
Line 191: Line 190:
   * Anticipation of change   * Anticipation of change
   * Generality   * Generality
-  * **Incremantality** +  * **Incremantality**
  
 ===== Incremantality ===== ===== Incremantality =====
   *//A journey of a thousand miles begins with a single step.// ---Lao-tzu mistranslation<sup>[[http://www.quotationspage.com/quote/24004.html|4]]</sup>   *//A journey of a thousand miles begins with a single step.// ---Lao-tzu mistranslation<sup>[[http://www.quotationspage.com/quote/24004.html|4]]</sup>
   * Development proceeds in a stepwise fashion (i.e., in //increments//).   * Development proceeds in a stepwise fashion (i.e., in //increments//).
 +    * "Iterative refinement"
     * Deliver subsets of a system early to get early feedback     * Deliver subsets of a system early to get early feedback
     * Deliver prototype of the system and incrementally add effort to turn it into product     * Deliver prototype of the system and incrementally add effort to turn it into product
     * Implement functionality, then tune performance     * Implement functionality, then tune performance
-    * "Iterative refinement" 
   * Supports **anticipation of change**   * Supports **anticipation of change**
   * Example: [[http://adium.im|Adium]]'s [[https://bitbucket.org/adium/adium/changesets|commit history]]   * Example: [[http://adium.im|Adium]]'s [[https://bitbucket.org/adium/adium/changesets|commit history]]
Line 207: Line 206:
   * Conflicts among principles may arise.   * Conflicts among principles may arise.
   * Software engineering is:   * Software engineering is:
-    * a new field and subject to change+    * a new field and subject to change.
     * made by humans for humans.     * made by humans for humans.
-  * Your contemplations and considerations are crucial.+  * Your contemplations and contributions are crucial.
  
 ===== Endnotes ===== ===== Endnotes =====
century/principles_of_software_engineering.txt · Last modified: 2012/07/25 16:07 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki