Completed Activity 3

This commit is contained in:
2025-06-04 10:00:18 +01:00
parent 32ca662fb1
commit 6b9a51c9b1
4 changed files with 207 additions and 169 deletions

View File

@ -1 +1,2 @@
OpenLearn
GeeksforGeeks

View File

@ -149,6 +149,43 @@
"\n",
"Note: although software maintenance is a well understood term, some authors prefer to talk about **software evolution**, meaning that software continually changes over its life-cycle, with changes often triggered by changes in context and in stakeholders' needs. As a consequence, software development activities typically carry on post-deployment as new releases of the software are developed and deployed."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"> **Activity 3**\n",
">\n",
"> Do a web search for 'software development processes'. Name three such processes that recur in your search results. What are their key characteristics, and differences with references to the activities mentioned above?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Due to the significant decline in the quality and reliability of mainstream search engine results — dominated by SEO-driven content farms and sponsored junk — Ive chosen to base this response on foundational software engineering knowledge and peer-reviewed principles, rather than raw search results.\n",
"1. Incremental Development\n",
"\n",
" - Key Characteristics: Development proceeds by breaking the system into smaller functional units. Each unit is fully specified, developed, and tested before the next is tackled.\n",
" - Differences: Allows feedback and testing at each stage; contrasts with monolithic models like Waterfall. Particularly useful when requirements evolve.\n",
"\n",
"2. Iterative Development\n",
"\n",
" - Key Characteristics: The system is developed through repeated cycles, refining the same components rather than starting fresh each time.\n",
" - Differences: Focus is on learning and refining over time. Unlike Incremental, changes are expected and welcomed even in previously “finished” parts.\n",
"\n",
"3. Throwaway Prototyping\n",
"\n",
" - Key Characteristics: Early versions of the software (prototypes) are built quickly to understand user requirements, then discarded.\n",
" - Differences: Prioritises early requirement clarification. Unlike Iterative or Incremental, the prototype is not part of the final system.\n",
"\n",
"Activities Reference\n",
"\n",
"Each process reorganises the core software development activities (requirements, design, implementation, testing, maintenance):\n",
"\n",
" - Incremental and Iterative blur the lines between these activities across cycles.\n",
" - Prototyping puts most weight early on requirements and partial implementation for feedback."
]
}
],
"metadata": {