How was software designed traditionally?
How is software used/designed now?
What are some types of modern software applications?
How do hosted applications work?
What are the benefits of a hosted application?
The level of control the application developers have; application developers can change the server software as they wish because this does not require sending updates to customers
What are mobile applications?
These are programs that are installed on mobile devices.
How do mobile applications work?
What are embedded applications?
These are applications that run on electronics devices, such as wearables, automo- biles, and medical devices.
How do embedded applications work?
Define formal software engineering
Define Agile software engineering
What activities or phases constitute a software project?
Define requirements engineering
eliciting the requirements for the system, analysing and defining these requirements
using models, and validating the requirements.
Define systems/architectural design
defining the sub-systems (or components) within the system, and the relationships between them.
Define detailed design
defining the behaviour of the components to fulfil the functional requirements.
Define Implementation
programming the detailed design in some language.
Define Integration
integrating the programmed parts with respect to the architecture.
Define Testing
running executable tests on the programs in an attempt to find faults. Testing can take several forms, includ- ing:
What are the 4 main types of testing?
Define unit testing
tests the behaviour of individual components against their design;
Define Integration testing
tests the behaviour of the sub-systems of components against the design;
Define system testing
tests the behaviour of the system as a whole against the requirements
Define acceptance testing
Tests that the system as a whole against the expectations of the customer or user.
Define Delivery and release
packaging the software in an accessible manner and with useful documentation.