Desenvolvimento de software

Partilhar isto
" Voltar ao Índice do Glossário

Software development is a structured process involving various methods, processes, phases, testing and production stages, as well as diverse personnel and tools. The methodologies include strategies like code-and-fix, iterative, waterfall, Agile, and DevOps, each suited for different project needs. The software development process consists of steps such as the software development life cycle, feasibility analysis, the analysis phase, design, and programming. The phases involve feasibility analysis, requirements analysis, detailed specifications, decomposition, and design. Testing and production encompass activities like code testing, debugging, quality assurance, production deployment, and bug fixing. Finally, the process requires team collaboration, effective communication, and the use of various tools such as Computer-Aided Software Engineering[2] (CASE), Integrated Development Environments (IDEs), and version control systems. Propriedade intelectual[1] and licensing considerations are also crucial in software development.

Definições de termos
1. Propriedade intelectual ( Intellectual property ) Intellectual property refers to creations of the mind, such as inventions, literary and artistic works, designs, symbols, names, and images used in commerce. These intangible assets have intrinsic value and are protected by law through patents, copyrights, and trademarks. The concept of intellectual property originated as early as the 15th century, with the Venetian Patent Statute of 1474 being the earliest codified patent system. The idea is to stimulate innovation and progress by giving creators the right to control and profit from their creations. This promotes creativity, fair trading, and economic growth. However, intellectual property laws also need to balance these rights with the wider public interest, ensuring that knowledge and technologies remain widely accessible. Intellectual property rights violations, such as patent, copyright, and trademark infringement, as well as trade secret theft, can have severe consequences.
2. Engenharia de software ( Software Engineering ) 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 technology. 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 computer programming, 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.

Desenvolvimento de software is the process used to create software. Programming e maintaining the source code is the central step of this process, but it also includes conceiving the project, evaluating its feasibility, analyzing the business requirements, software design, testing, to release. Engenharia de software, in addition to development, also includes project management, employee management, and other overhead functions. Software development may be sequential, in which each step is complete before the next begins, but iterative development methods where multiple steps can be executed at once and earlier steps can be revisited have also been devised to improve flexibility, efficiency, and scheduling.

Software development involves professionals from various fields, not just software programmers but also individuals specialized in testing, documentation writing, graphic design, user support, marketing, and fundraising. A number of tools and models are commonly used in software development, such as integrated development environment (IDE), version control, computer-aided software engineeringe software documentation.

" Voltar ao Índice do Glossário
pt_PT_ao90PT
Deslocar para o topo