SlideServe
Menu
Préférences
© SlideServe · v2026

Software Construction

rex avatar
20 diapositives · 1.2K Views · Jul 11, 2014

SWEBOK Chapter 4. Software Construction. Fundamentals. Minimizing Complexity Anticipating Change Construction for Verification Standards in Construction. Minimizing Complexity. One of the strongest drivers in software construction Required due to human limitations of memory .

Software Construction - slide 1
01 / 20Software Construction
1 / 17

Télécharger la présentation

Software Construction
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. SWEBOK Chapter 4 Software Construction

  2. Fundamentals • Minimizing Complexity • Anticipating Change • Construction for Verification • Standards in Construction

  3. Minimizing Complexity • One of the strongest drivers in software construction • Required due to human limitations of memory

  4. Minimizing Complexity How is complexity minimized during software construction? Use of standards Coding practices Construction-oriented quality techniques Creation of code that is simple and readable rather than clever

  5. Anticipate Change • Software will change • Coding techniques can be used to make change easier (designing for change is also critical)

  6. Construction for Verification • Built is such a way to allow easy identification of defects • By developers during construction • By testers

  7. Construction for Verification • Techniques • Following coding standards • Unit testing • Organizing code to support automated testing • Restricted use of complex/hard-to-understand language structures

  8. Standards in Construction • Communication methods • Programming languages • Platforms • Tools • External standards • Internal standards

  9. Managing Construction • Construction Models • Construction Planning • Construction Measurement

  10. Construction Models • Linear construction view • Construction only after significant pre-requisite work is complete • Coding is main focus of construction • Interative • Construction occurs at the same time as other development activities • Combination of activities all considered construction

  11. Construction Planning • How are we going to build it? • Affects prerequisite activities • Extent to which they are performed • Order in which they are performed • Degree to which they are expected to be complete before construction begins • Affects project’s ability to minimize complexity, anticipate change, and construct for verification • Defines the order in which components are created and integrated, QA management process, allocation of task assignments, etc.

  12. Construction Measurement • What aspects are being measured? • Code developed (LOC) • Code reused • Code modified • Code complexity • Code inspection statistics • Defects found • Defects fixed • Effort • Scheduling • Story points (velocity) • Why do we need to measure construction?

  13. Practical Considerations • Construction Design • Construction Languages • Coding • Construction Testing • Reuse • Construction Quality • Integration

  14. Construction Design • Design done before construction will be incomplete • Detailed design same as overall design but at a smaller scale

  15. Construction Languages • Anyway that a human can specify execution instructions to a computer • Configuration Languages • Toolkit Languages • Programming Languages

  16. Coding • Understandable source code • Use of classes, enumerated types, variables, named constants, etc • Control structures • Error handling • Prevention of code-level security breaches • Resource usage • Source code organization • Code documentation • Code tuning

  17. Construction Testing • Goal: to reduce the time between defect creation and default detection • Subset of overall testing types performed by the engineer who wrote the code • Unit testing • Integration testing

  18. Reuse • Reuse processes and activities must be formalized into the software life cycle • Selection of what to reuse • Evaluation of code or test reusability • Reporting of reuse information on new code

  19. Construction Quality • Common Techniques • Unit and integration testing • Test-first development • Code stepping • Use of assertions • Debugging • Technical reviews • Static analysis • Focus on code and not overall project

  20. Integration • Plan the sequence in which components will be integrated • Creation of scaffolding and stubs to support interim versions • Determining the degree of testing done on components before they are integrated • Determine when interim versions of the software are tested