Curriculum Programmation informatique 12e

Computer Programming
Grade 12
Big Ideas: 
The design cycle is an ongoing reflective process.
Personal design choices require self-exploration, collaboration, and evaluation and refinement of skills.
Tools and technologies can be adapted for specific purposes.
Big Ideas Elaborations: 
  • design cycle: includes updating content, tools, and delivery. The design process can be non-linear.
Curricular Competencies: 
Applied Design
  • Understanding context
    • Conduct user-centred research to understand design opportunities and barriers              
  • Defining
    • Establish a point of view for a chosen design opportunity
    • Identify potential users, intended impact, and possible unintended negative consequences
    • Make decisions about premises and constraints that define the design space
  • Ideating
    • Identify gaps to explore a design space
    • Generate ideas and add to others’ ideas to create possibilities, and prioritize them for prototyping
    • Critically analyze how competing social, ethical, and sustainability considerations impact designed solutions to meet global needs for preferred futures
    • Work with users throughout the design process
  • Prototyping          
    • Identify and apply sources of inspiration and information
    • Choose an appropriate form, scale, and level of detail for prototyping, and plan procedures for prototyping multiple ideas
    • Analyze the design for the life cycle and evaluate its impacts
    • Construct prototypes, making changes to tools, materials, and procedures as needed
    • Record iterations of prototyping
  • Testing
    • Identify feedback most needed and possible sources of feedback
    • Develop an appropriate test of the prototype
    • Collect feedback to critically evaluate design and make changes to product design or processes
    • Iterate the prototype or abandon the design idea      
  • Making
    • Identify appropriate tools, technologies, materials, processes, and time needed for production
    • Use project management processes when working individually or collaboratively to coordinate production
  • Sharing
    • Share progress while creating to increase feedback, collaboration, and, if applicable, marketing
    • Decide on how and with whom to share or promote their product, creativity, and, if applicable, intellectual property
    • Consider how others might build upon the design concept
    • Critically reflect on their design thinking and processes, and identify new design goals
    • Assess ability to work effectively both as individuals and collaboratively while implementing project management processes
Applied Skills
  • Apply safety procedures for themselves, co-workers, and users in both physical and digital environments
  • Identify and assess skills needed for design interests, and develop specific plans to learn or refine them over time
Applied Technologies
  • Explore existing, new, and emerging tools, technologies, and systems to evaluate their suitability for their design interests
  • Evaluate impacts, including unintended negative consequences, of choices made about technology use
  • Analyze the role technologies play in societal change
  • Examine how cultural beliefs, values, and ethical positions affect the development and use of technologies
Curricular Competencies Elaborations: 
  • user-centred research: research done directly with potential users to understand how they do things and why, their physical and emotional needs, how they think about the world, and what is meaningful to them
  • constraints: limiting factors, such as available technology, expense, environmental impact, copyright
  • sources of inspiration: may include experiences, users, experts, and thought leaders
  • information: may include professionals as experts, secondary sources, collective pools of knowledge in communities and collaborative atmospheres both online and offline
  • impacts: including the social and environmental impacts of extraction and transportation of raw materials, manufacturing, packaging, transportation to markets, servicing or providing replacement parts, expected usable lifetime, and reuse or recycling of component materials
  • iterations: repetitions of a process with the aim of approaching a desired result
  • sources of feedback: may include peers; users; First Nations, Métis, or Inuit community experts; other experts and professionals both online and offline
  • appropriate test: includes evaluating the degree of authenticity required for the setting of the test, deciding on an appropriate type and number of trials, and collecting and compiling data
  • project management processes: setting goals, planning, organizing, constructing, monitoring, and leading during execution
  • Share: may include showing to others, use by others, giving away, or marketing and selling
  • product: for example, a physical product, a process, a system, a service, or a designed environment
  • intellectual property: creations of the intellect such as works of art, invention, discoveries, design ideas to which one has the legal rights of ownership
  • technologies: tools that extend human capabilities
Concepts and Content: 
  • design opportunities
  • design cycle
  • advanced programming structures
  • standardized source code documentation
  • self-documenting code
  • collaboration tools for programming
  • advanced pair programming
  • User interface design
  • error handling
  • debugging tools
  • management of complexity
  • uses of pre-built data structures
  • bug reports and feature requests from users
  • appropriate use of technology, including digital citizenship, etiquette, and literacy
  • interpersonal skills necessary to work effectively within the IT sector
Concepts and Content Elaborations: 
  • programming structures: higher-level structures, such as functions, methods, or classes, that help improve the organization of source code
  • documentation: documenting source code with industry standard tools
  • self-documenting: writing source code in such a way that makes inline comments seem unnecessary
  • collaboration tools: for example, online tools to facilitate pair and collaborative programming
  • advanced pair programming: While reviewing, the observer considers the "strategic" direction of the work, coming up with ideas for improvements and likely future problems to address. The driver focuses their attention on the "tactical" aspects of completing the current task, using the observer as a safety net and guide.
  • interface design: focus on maximizing usability and the user experience. The goal of user interface design is to make the user's interaction as simple and efficient as possible, in terms of accomplishing user goals
  • error handling: the response and recovery procedures from error conditions present in a software application; the process comprised of anticipation, detection and resolution of application errors, programming errors or communication errors
  • debugging: use of a debugger that is capable of stepping through code and monitoring variables
  • complexity: for example, a project whose scale requires multiple source files or functions
  • pre-built data structures: the data structures that are provided (e.g., from a standard library)
  • interpersonal skills: for example, people skills, social skills, communication, attitudes, collaboration, follow-ups, courtesies, record keeping
Update and Regenerate Nodes
Big Ideas FR: 
Le cycle de conception est un processus de réflexion continu.
Les choix personnels en matière de conception exigent de l’introspection, de la collaboration de même qu’une évaluation des compétences et leur développement.
Les outils et les technologies peuvent être adaptés à des fins précises.
Big Ideas Elaborations FR: 
  • cycle de conception : notamment la mise à jour du contenu, des outils et de la livraison. Le processus de conception peut être non linéaire.
  • Comprendre le contexte
    • Se livrer à des activités d’investigation axée sur l’utilisateur afin de déterminer des occasions de conception et les obstacles potentiels
  • Définir
    • Établir un point de vue pour un concept donné
    • Déterminer les utilisateurs potentiels, l’effet recherché et les conséquences négatives imprévues
    • Prendre des décisions à partir des prémisses et des contraintes qui définissent l’espace de conception
  • Concevoir des idées
    • Déterminer les lacunes afin d’explorer un espace de conception
    • Formuler des idées et améliorer les idées des autres afin de créer des possibilités, et classer ces idées par ordre de priorité dans le but d’assembler un prototype
    • Analyser de manière critique les répercussions sur les solutions de conception des facteurs opposés associés à la vie sociale, l’éthique et la durabilité, afin de répondre aux besoins de la collectivité dans des scénarios d’avenir souhaitables
    • Travailler avec les utilisateurs tout au long du processus de conception
  • Assembler un prototype
    • Répertorier et utiliser des sources d’inspiration et des sources d’information
    • Choisir la forme, l’échelle et le degré de précision adéquats pour l’élaboration des prototypes, et prévoir des procédures pour le prototypage de plusieurs idées
    • Analyser la conception du cycle de vie et en évaluer les répercussions
    • Assembler le prototype en changeant, s’il le faut, les outils, les matériaux et les méthodes
    • Consigner les réalisations des versions successives du prototype
  • Mettre à l’essai
    • Déterminer la rétroaction la plus adéquate et les sources de rétroaction possibles
    • Concevoir une procédure d’essai adéquate pour le prototype
    • Obtenir une rétroaction afin d’évaluer la conception de manière critique, et apporter des modifications à la conception du produit ou aux processus
    • Recréer le prototype ou abandonner le concept
  • Réaliser
    • Déterminer les outils, les technologies, les matériaux et les processus adéquats ainsi que le temps nécessaire pour la production
    • Utiliser des processus de gestion de projet pendant le travail individuel ou en équipe pour la coordination de la production
  • Présenter
    • Communiquer les progrès tout au long du processus de réalisation afin d’accroître la rétroaction, la collaboration et, s’il y a lieu, la commercialisation
    • Déterminer comment et à qui présenter ou promouvoir son produit, sa créativité et, s’il y a lieu, sa propriété intellectuelle
    • Envisager comment d’autres personnes pourraient s’appuyer sur le concept
    • Se livrer à une réflexion critique sur son approche et ses processus conceptuels, et dégager de nouveaux objectifs de conception
    • Évaluer la capacité à travailler efficacement seul et en équipe pendant la mise en œuvre des processus de gestion de projet
Compétences pratiques
  • Respecter les consignes de sécurité pour soi-même, les collègues de travail et les utilisateurs, tant dans des milieux physiques que numériques
  • Déterminer et évaluer les compétences pratiques requises pour les concepts envisagés, et élaborer des plans précis pour l’acquisition de ces compétences ou leur développement
  • Explorer les outils, les technologies et les systèmes existants et nouveaux, et évaluer leur pertinence par rapport aux concepts envisagés
  • Évaluer les répercussions, y compris les conséquences négatives imprévues, de ses choix technologiques
  • Analyser le rôle que jouent les technologies dans les changements sociétaux
  • Examiner l’incidence des croyances et des valeurs culturelles ainsi que des positions éthiques sur le développement et l’utilisation des technologies
Curricular Competencies Elaborations FR: 
  • investigation axée sur l'utilisateur : investigation menée directement auprès d'utilisateurs potentiels dans le but de comprendre la manière dont ceux-ci font les choses et pourquoi ils agissent ainsi, leurs besoins physiques et émotionnels, leur conception du monde et ce qui revêt une valeur particulière pour eux
  • contraintes : facteurs limitatifs, notamment la disponibilité des technologies, les coûts, les ressources, le temps, l'impact environnemental et les droits d'auteur
  • sources d'inspiration : notamment des expériences, des utilisateurs, des spécialistes et des personnalités phares
  • sources d'information : notamment des spécialistes professionnels, des sources secondaires, des fonds de connaissances collectifs communautaires et des milieux favorisant la collaboration, en ligne ou hors ligne
  • répercussions : notamment les répercussions sur le plan social et environnemental de l'extraction et du transport des matières premières; de la fabrication, de l'emballage et du transport vers les marchés; de l'entretien ou de la fourniture de pièces de rechange; de la durée de vie utile prévue, ainsi que de la réutilisation ou du recyclage des matériaux des composantes
  • versions successives : répétition d'un processus dans le but de se rapprocher du résultat souhaité
  • sources de rétroaction : rétroaction provenant p. ex. des pairs, des utilisateurs, de spécialistes issus des communautés métisses, inuites et des Premières Nations, ainsi que d'autres spécialistes ou professionnels, en ligne ou hors ligne
  • procédure d'essai adéquate : notamment l'évaluation du degré d'authenticité requis pour le réglage de l'essai, la détermination du type et du nombre d'essais adéquats, de même que la collecte et la compilation des données
  • processus de gestion de projet : définition des objectifs, planification, organisation, construction, surveillance et direction pendant la réalisation
  • présenter : notamment la présentation ou la cession du concept, son utilisation par d'autres, ou encore sa commercialisation et sa vente
  • produit : p. ex. un produit physique, un processus, un système, un service ou un environnement conçu
  • propriété intellectuelle : créations intellectuelles, notamment des œuvres d'art, des inventions, des découvertes, des idées de conception sur lesquelles une personne a des droits de propriété
  • technologies : outils qui accroissent les capacités humaines
  • Occasions de conception
  • Cycle de conception
  • Structures de programmation avancées
  • Documentation standardisée de code source
  • Code autodocumenté
  • Outils de collaboration pour la programmation
  • Programmation en binôme avancée
  • Conception d’interface utilisateur
  • Gestion des erreurs
  • Outils de débogage
  • Gestion de la complexité
  • Utilisation de structures de données préconstruites
  • Rapports de bogues et demandes de fonctionnalités faites par les utilisateurs
  • Utilisation appropriée de la technologie, notamment la citoyenneté, l’étiquette et la littératie numériques 
  • Compétences relationnelles nécessaires pour travailler de façon efficace dans le secteur des TI
content elaborations fr: 
  • Structures de programmation : structures de plus haut niveau, notamment les fonctions, les méthodes ou les catégories qui aident à améliorer l’organisation du code source
  • Documentation : documentation du code source au moyen d’outils conformes aux normes de l’industrie
  • autodocumenté : rédaction du code source de telle manière que les commentaires dans la ligne peuvent sembler superflus
  • Outils de collaboration : p. ex. des outils en ligne qui facilitent la programmation en binôme ou en collaboration
  • Programmation en binôme avancée : tout en révisant, l’observateur tient compte de l’orientation « stratégique » du travail pour proposer des idées d’améliorations et prévoir les problèmes éventuels qu’il faudra résoudre. Le conducteur se concentre sur les aspects « tactiques » de la tâche en cours, en utilisant l’observateur comme un filet de sécurité et un guide.
  • Conception d’interface : accent sur l’optimisation de la convivialité et de l’expérience utilisateur. L’objectif de la conception d’interface utilisateur est de rendre l’interaction de l’utilisateur aussi simple et efficace que possible en ce qui concerne l’atteinte de ses objectifs.
  • Gestion des erreurs : mise en œuvre de procédures d’intervention et de reprise après la détection de conditions d’erreur dans une application logicielle; le processus comprend l’anticipation, la détection et la résolution des erreurs dans une application, des erreurs de programmation ou des erreurs de communication
  • débogage : utilisation d’un débogueur capable d’examiner le code et de surveiller les variables
  • complexité : p. ex. un projet dont l’envergure requiert plusieurs fichiers sources ou fonctions
  • structures de données préconstruites : p. ex. les structures de données qui sont fournies par une bibliothèque standard
  • Compétences relationnelles : p. ex. les aptitudes en relations humaines, les aptitudes sociales, la communication, les attitudes, la collaboration, les suivis, la civilité et la tenue de dossiers
PDF Only: 
Curriculum Status: 
Has French Translation: