Software engineering project#
Identifying and defining#
Define and analyse the requirements of a problem
Including
demonstrating need(s) or opportunities
assessing scheduling and financial feasibility
generating requirements including functionality and performance
defining data structures and data types
defining boundaries
Explore tools used to develop ideas and generate solutions
Including
brainstorming, mind-mapping and storyboards
data dictionaries, including selecting appropriate data types
algorithm design
code generation
testing and debugging
installation
maintenance
Investigate types of software implementation methods
Including
direct
phased
parallel
pilot
Research and planning#
Research and use the Waterfall software development approach
Including
logical progression of steps used throughout the life cycle
stages of ‘falling water’
advantages and disadvantages
scale and types of developments
Research and use the Agile software development approach
Including
rate of developing a final solution
method tailoring
iteration workflow
scale and types of developments
Research the WAgile software development approach
Including
understanding it is a hybrid model
analysis of the ‘when’ and ‘how’ intervention is applied during the development life cycle
scale and types of developments
Apply project management to plan and conduct the development and implementation of a project and software engineering solution
Including
scheduling and tracking using a software tool, including Gantt charts
using collaboration tools
Explore social and ethical issues associated with project work, including working individually, collaboratively and responding to stakeholders
Explore communication issues associated with project work
Including
involving and empowering the client
enabling feedback
negotiating
Investigate how software engineering solutions are quality assured
Including
defining criteria on which quality will be judged
ensuring requirements are met using a continual checking process
addressing compliance and legislative requirements
Demonstrate the use of modelling tools
Explain the contribution of back-end engineering to the success and ease of software development
Including
technology used
error handling
interfacing with front end
security engineering
Producing and implementing#
Design, construct and implement a solution to a software problem using appropriate development approach(es)
Present a software engineering solution using presentation software
Develop, construct and document algorithms
Allocate resources to support the development of a software engineering solution
Demonstrate the use of programmed data backup
Implement version control when developing a software engineering solution
Explore strategies to respond to difficulties when developing a software engineering solution
Including
looking for a solution online
collaboration with peers
outsourcing
Propose an additional innovative solution using a prototype and user interface (UI) design
Testing and evaluating#
Apply methodologies to test and evaluate code
Use a language-dependent code optimisation technique
Analyse and respond to feedback
Evaluate the effectiveness of a software engineering solution
Including