Completed Activity 3
This commit is contained in:
1
.vscode/ltex.dictionary.en-GB.txt
vendored
1
.vscode/ltex.dictionary.en-GB.txt
vendored
@@ -1 +1,2 @@
|
|||||||
OpenLearn
|
OpenLearn
|
||||||
|
GeeksforGeeks
|
||||||
|
|||||||
@@ -149,6 +149,43 @@
|
|||||||
"\n",
|
"\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."
|
"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 — I’ve 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": {
|
"metadata": {
|
||||||
|
|||||||
Reference in New Issue
Block a user