Génie logiciel

Partager
" Retour à l'index des glossaires

Software engineering is a specialized field of study that emerged in the 1960s, primarily concerned with the design and creation of software systems. The discipline experienced significant evolution due to the rapid advancements in hardware technologie[2]. It gained global recognition after the term ‘software engineering’ was popularized at the 1968 NATO conference and further endorsed by Margaret Hamilton during her work on the Apollo program. Today, it encompasses a range of practices and specialties, including project management, system analysis, development, testing, and more. The education for this profession typically begins with a solid foundation in programmation informatique[1], often obtained through a university degree or vocational training, followed by continual learning outlined by resources like the Software Engineering Body of Knowledge (SWEBOK). Software engineers work across various sectors and can often choose to be freelancers. They may also pursue professional certifications to enhance their career prospects. Despite varying global regulations, the field adheres to codes of ethics published by professional organizations like the IEEE and ACM.

Définitions des termes
1. programmation informatique. Computer programming is a crucial field within computer science, which involves the creation of instruction sets that computers execute to accomplish specific tasks. Originating with pioneers like Ada Lovelace, programming has evolved significantly over time. From primitive programmable devices in the 9th century to the advent of stored-program computers in the 1949, the discipline has seen tremendous growth. Various programming languages and tools, like machine code, assembly languages, and high-level languages, have been developed to simplify the coding process. Modern programming places emphasis on quality attributes such as reliability, robustness, usability, portability, and maintainability. It involves various concepts and techniques like readability of source code, algorithmic complexity, and software development methodologies. Besides coding, a programmer's skills encompass prototyping, debugging, documentation, and integration. The field also extends to related topics like computer networking and competitive programming. This discipline is not just about writing code, but understanding and building functional and efficient software systems.
2. technologie. La technologie, dérivée des mots grecs signifiant artisanat et connaissance, est un terme général qui désigne les outils, les machines et les systèmes mis au point par l'homme pour résoudre des problèmes ou atteindre des objectifs. Née avec des outils primitifs comme les haches de pierre et la découverte du feu, la technologie a évolué de manière significative tout au long de l'histoire de l'humanité. Elle a joué un rôle déterminant à différentes époques, depuis l'invention de la roue et des systèmes d'irrigation avancés dans les civilisations anciennes jusqu'à la naissance des universités et de la presse à imprimer au cours des périodes médiévale et de la Renaissance. La révolution industrielle du XVIIIe siècle a marqué un tournant important dans la production de masse et l'innovation, donnant naissance aux technologies modernes telles que l'électricité, l'automobile et les plates-formes de communication numérique. Aujourd'hui, la technologie fait partie intégrante de divers aspects de la vie et de la société, stimulant la croissance économique et les changements sociétaux, tout en suscitant des préoccupations en matière de sécurité, de respect de la vie privée et d'incidences sur l'environnement. L'avenir de la technologie devrait apporter encore plus de progrès, avec l'essor de l'intelligence artificielle qui devrait avoir des implications significatives sur le marché du travail.
Génie logiciel (Wikipedia)

Génie logiciel is an engineering-based approach to software development. A software engineer is a person who applies the engineering design process to design, develop, test, maintain, and evaluate logiciel informatique. The term programmer is sometimes used as a synonym, but may emphasize software implementation over design and can also lack connotations of engineering education or skills.

Engineering techniques are used to inform the software development process, which involves the definition, implementation, assessment, measurement, management, change, and improvement of the software life cycle process itself. It heavily uses software configuration management, which is about systematically controlling changes to the configuration, and maintaining the integrity and traceability of the configuration and code throughout the system life cycle. Modern processes use software versioning.

" Retour à l'index des glossaires
fr_FRFR
Retour en haut