Software Development and Algorithm Concepts
Learn about software development, algorithm concepts, and the software development life cycle with past paper questions and sample answers.
<div style='margin-bottom: 20px;'>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">How does software engineering aim to address the software crisis?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">By treating software development as an engineering activity, applying principles from established branches of engineering to produce quality software.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What are the two main categories of software requirements?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">Functional and Non-Functional Requirements.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the primary objective of software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">The primary objective is to produce software products through activities like new development, modification, reuse, re-engineering, and maintenance.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What are the key properties that an algorithm must possess?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">Correctness, unambiguity, completeness, simplicity, and termination.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the primary goal of a feasibility study in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">To determine whether the project is viable and what the potential challenges are.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What types of maintenance are necessary for a software system during its working life?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">Corrective, Adoptive, and Perfect Maintenance.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">How do Sequence, Selection, and Iteration/Repetition contribute to Structured Programming?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">They are control constructs that define the flow of execution within a program.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the primary purpose of using the waterfall method in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">To follow a sequential approach where each phase must be completed before the next begins.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What are the two main types of software products?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">Generic products and bespoke (customized) products.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the main objective of the testing phase in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">To find errors and ensure the software functions according to specifications.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the role of a computer programmer in the programming process?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">To write computer programs using programming languages, focusing on coding and documenting the solution.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">How does an iterative and incremental approach differ from traditional software development methods?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">It involves repeatedly revisiting and refining aspects of the software until it meets all requirements.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the purpose of prototyping in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">To test feasibility and involve the end-user in the design phase.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the main advantage of using Prototyping in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">It allows for exploring and refining system requirements when they are not clear at the beginning.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What is the outcome of the system design phase in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">The Design Specification.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What stages are involved in the Software Development Life Cycle (SDLC)?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">Software specification, design and implementation, validation, and evolution.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">What are the three aspects evaluated during a feasibility study in software development?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">Technical, economical, and legal feasibility.</p>
</div>
<div style="margin-bottom: 10px; background-color: #f2f2f2; border-radius: 1rem; padding: 10px 20px;">
<h2 style="font-weight: bold; margin-bottom: 3px; font-size: 1.5rem;">How do fourth generation languages (4GLs) differ from third generation languages?</h2>
<p style="font-weight: normal; font-size: 1.2rem;">4GLs are closer to human language and designed to improve programming efficiency.</p>
</div>
</div>