Zone des développeurs Intel® :
Courseware - Software Design

Fundamental design concepts and principles

  • The role and the use of contracts
  • Design patterns
  • Software architecture
  • Structured design
  • Object-oriented analysis and design
  • Component-level design
  • Design qualities
  • Internal including low coupling, high cohesion, information hiding, efficiency
  • External including reliability, maintainability, usability, performance
  • Other approaches: data-structured centered, aspect oriented, function oriented, service oriented, agile
  • Design for reuse
  • Use of open-source materials
  • Parallel Design Patterns
  • Material Type:

    Lecture / Presentation

    ISN Logo

    Technical Format:

    Powerpoint presentation, Word document, zip archive

    Location:

    Go to materials

    Date Added:

    08/11/2010

    Date Modified:

    08/11/2010

    Author

    Intel® Innovative Software Education, Intel
    Description:

    In this 2 hour module, participants will learn about design patterns that are helpful in paralleling common application types. Participants will be able to describe the concepts behind design patterns and parallel design patterns. Given serial code or algorithms, participants can choose the better Algorithm Structure design pattern (either Task Parallelism or Geometric Decomposition) to be used in threading the code and defend their choices. Given serial code or algorithms, choose the better Supporting Structure design pattern (either SPMD, Loop Parallelism or Boss/Worker) to be used in threading the code and defend their choices

    Recommended Audience:

    Advanced programmers, Beginning programmers, Undergraduate students

    Language:

    English

    Keywords:

    design patterns, Algorithm Structure design pattern, Task Parallelism, Geometric Decomposition
  • Real-time System Design and Analysis
  • Material Type:

    Lecture / Presentation, Coding example, Lab

    ISN Logo

    Technical Format:

    Powerpoint presentation, zip archive, Word document

    Location:

    Go to materials

    Date Added:

    08/11/2010

    Date Modified:

    08/11/2010

    Author

    Professor Zhongwen Li, XiaMen University, P. R. China
    Description:

    The intended audience of this course are students who want to understand, design, and evaluate parallel real-time application software. The goal of the course is to demonstrate the complete process of parallel real-time system software design from system analysis to realization using case studies. Integrated with the latest multi-core programming technology, this course introduce software development based on multi-core systems via learning on examples methodology, and teach how to use CODARTS (Real-time system parallel design method) to analyze and design real-time system, locate parallel section and use multi-core programming to resolve system bottle-neck and achieve software efficiency and performance. The course has been selected by China Ministry of Education in 2007 as one of the "China Ministry of Education-Intel Quality Courseware" courses.

    Recommended Audience:

    Advanced programmers, Graduate students, Undergraduate students

    Language:

    Chinese

    Keywords:

    parallel realtime system, multicore programming, realtime application software, CODARTS
  • Examples of Concurrent Solution Design
  • Material Type:

    Lecture / Presentation

    ISN Logo

    Technical Format:

    zip archive, PDF document, Powerpoint presentation

    Location:

    Go to materials

    Date Added:

    08/11/2010

    Date Modified:

    08/11/2010

    Author

    Intel® Innovative Software Education, Intel
    Description:

    Examples of Concurrent Solution Design:

    Lectures for instructor demonstration. These lectures cover the workload partitioning methods for the typical program constructs of iteration, function (call) as well as the sub-tasking application scenario. The examples used for case study are known numeric algorithm of Least Square Estimation, encryption algorithm Huffman Coding and implementation of a Spell Checker. The examples in this module will enrich case study base that are currently in use for standard concurrent/parallel programming curricula.

    Recommended Audience:

    Advanced programmers, Undergraduate students

    Language:

    English

    Keywords:

    parallel solutions, instructor lead module