- 👋 Hi, I’m Raquel Poldi
- 👀 I’m interested in coding
- 🌱 I’m currently learning Phyton
Software Construction
The term software construction refers to the detailed creation of working software through a combination of coding, verification, unit testing, integration testing, and debugging. The Software Construction is most strongly linked to Software Design and Software Testing because the software construction process involves significant software design and testing. The process uses the design output and provides an input to testing. Boundaries between design, construction, and testing (if any) will vary depending on the software life cycle processes that are used in a project.
Although some detailed design may be performed prior to construction, much design work is performed during the construction activity. Thus, the Software Construction is closely linked to the Software Design . Throughout construction, software engineers both unit test and integration test their work. Thus, the Software Construction is closely linked to the Software Testing as well.
Software construction typically produces the highest number of configuration items that need to be managed in a software project (source files, documentation, test cases, and so on). Thus, the Software Construction is also closely linked to the Software Configuration Management. Code is the ultimate deliverable of a software project, and thus the Software Quality is closely linked to the Software Construction.
Since software construction requires knowledge of algorithms and of coding practices, it is closely related to the Computing Foundations, which is concerned with the computer science foundations that support the design and construction of software products. It is also related to project management, insofar as the management of construction can present considerable challenges.
Source: Software Engineering Body of Knowledge (SWEBOK)
- Meta Front-End Developer Professional Certificate
- Meta Back-End Developer Professional Certificate
- Meta Android Developer Professional Certificate
- Meta iOS Developer Professional Certificate
- Meta Database Engineer Professional Certificate
- IBM Full-Stack JavaScript Developer Professional Certificate
- IBM Full Stack Software Developer Professional Certificate
- IBM DevOps and Software Engineering Professional Certificate
- Medium - Programming
- Top Programming Blogs and Websites For Programmers
- Top Software Development Blogs, Websites & Influencers
Important Note: all learning resources available here are free. If you found any learning resource that requires a fee or the URL is broken/wrong, please inform us. Regarding the MOOCs that are bundled as a specialization track with a fee (e.g. coursera's specializations and edx's xseries programs), you can look for each individual course and take it for free (Audit option).
- TIOBE Index
- Stack Overflow Annual Developer Survey
- GitHub: The State of the Octoverse
- ThoughtWorks Technology Radar
- What is Programming?
- CS50's Introduction to Programming with Scratch
- CS50's Introduction to Programming with Python
- Programming for Everybody (Getting Started with Python)
- Java Programming and Software Engineering Fundamentals
- Version Control with Git
- Intro to HTML and CSS
- HTML, CSS, and Javascript for Web Developers
- Introduction to Web Accessibility
- Networking for Web Developers
- Front-End Interview Prep
- Android Basics in Kotlin
- Build Your First Android App (Project-Centered Course)
- Android Mobile Lifecycle and Software Development Approaches
- The Web and Databases in Android
- UX Design for Mobile Developers
- Swift for Beginners
- Developing Apps for iOS
- iOS App Development with Swift
- iOS Mobile Lifecycle and Software Development Approaches
- Full Stack Foundations
- CS50's Web Programming with Python and JavaScript
- Object-Oriented JavaScript
- Intro to jQuery
- Intro to Backend
- Introduction to Node.js
- Building High Conversion Web Forms
- JavaScript and the DOM
- Web Tooling & Automation
- Responsive Web Design Fundamentals
- Responsive Website Development and Design
- Responsive Images
- Authentication & Authorization: OAuth
- Designing RESTful APIs
- Offline Web Applications
- Intro to Progressive Web Apps
- Deploying Applications with Heroku
- Full-Stack Interview Prep
- Kotlin Bootcamp for Programmers - Udacity
- Kotlin Bootcamp for Programmers - Google
- Developing Android Apps with Kotlin
- Firebase in a Weekend: Android
- Firebase Analytics: Android
- Android Interview Prep
- Intro to iOS App Development with Swift
- AutoLayout
- Server-Side Swift
- Firebase in a Weekend: iOS
- Firebase Analytics: iOS
- iOS Interview Prep
- CS50's Introduction to Databases with SQL
- Intro to Relational Databases
- Database Management Essentials