Flashcards - FSE Week 6 Computer Sciences Study Set
What is software engineering?
Software engineering is an engineering discipline concerned with all aspects of software production, from early system specification to maintaining the system after it has gone into use.
What are generic products in software?
Generic products are stand-alone systems marketed and sold to any customer, such as PC software for graphics or project management tools.
What is the primary activity of software specification?
Software specification involves defining the software that is to be produced and the constraints on its operation.
Which application type runs on a local computer and does not require a network?
Stand-alone applications run on a local computer and include all necessary functionality without needing a network.
What is software reuse?
Software reuse is the dominant approach for constructing web-based systems by assembling them from pre-existing software components.
What are the four basic process activities in software engineering?
Specification, development, validation, and evolution are the four basic process activities in software engineering.
What is the primary disadvantage of the waterfall model in software development?
The main drawback of the waterfall model is the difficulty of accommodating changes after the process is underway.
What does agile-incremental development emphasize?
Agile-incremental development emphasizes delivering small, incremental software changes rapidly, while continuously evaluating requirements.
What are the main reasons for using a prototype in software development?
Prototypes are used for demonstrating concepts, trying out design options, and improving requirements elicitation and validation.
What is testing in the context of software validation?
Testing involves executing the system with test cases derived from the specification to ensure it meets the requirements of the customer.
What is the purpose of requirements validation?
Requirements validation checks the validity of the requirements to ensure they meet the stakeholders’ needs and expectations.
What is the role of debugging in software implementation?
Debugging is the activity of finding and correcting program faults during the software implementation process.
What does validation in software engineering involve?
Validation involves verifying that the software conforms to its specification and meets the needs of the customer through testing.
What is a plan-driven process in software engineering?
A plan-driven process is where all process activities are planned and progress is measured against this plan.
What issues can affect software development due to heterogeneity?
Heterogeneity leads to challenges in ensuring that systems operate as distributed systems across different types of computers and devices.