Content / Knowledge
Textbook focus
Software Development VCE Units 3&4, Chapter 3, textbook pages 87-99.
Why develop software?
The textbook identifies four broad reasons for software development:
- increasing productivity and efficiency
- reducing costs
- identifying opportunities to address gaps in the market
- meeting organisational objectives or needs
Software is developed because hardware needs software in order to achieve a purpose. In practice, that purpose might be to automate repetitive tasks, streamline complex processes, improve access to information, lower labour costs, respond to an unmet need, or support a specific organisational goal.
The SAT begins with a brief
Your SAT starts by documenting a problem, need or opportunity within your community in a brief. The textbook states that this brief should consider:
- proposed users
- the programming language used
- the feasibility of the solution
- the originality of the solution
This brief becomes the first part of your Unit 3 Outcome 2 assessment. After the brief, you collect information about user needs and requirements, then use that data to create the software requirements specification (SRS).
Key Point
The brief is the starting point for the SAT and becomes a reference point for later analysis and design work.
Writing a design brief
The textbook describes a design brief as a roadmap for a software project. It helps everyone understand what the project is about, what needs to be done and how to do it. It also acts as a reference when you create the SRS.
Your design brief should be short and concise. It should use subheadings and brief descriptions rather than long paragraphs.
What your brief should include
Problem, need or opportunity outline
This section explains the specific problem, need or opportunity your software will address. It should describe the current challenge or gap and explain why it matters.
Proposed users
This section identifies the target audience for the software. The textbook refers to primary and secondary users and explains that you should show who they are, what they need and how they will benefit from the solution.
Programming language to be used
This section documents and justifies the programming language you will use. The textbook explains that this justification can be based on:
- compatibility with existing systems
- developer expertise
- performance requirements
- scalability
Feasibility
Feasibility involves evaluating whether the project can realistically be completed. The textbook describes feasibility in terms of:
- technical aspects
- financial aspects
- operational aspects
This section should outline resource requirements, a preliminary timeline and possible obstacles.
Originality
Originality is about how the proposed software stands out from existing solutions. The textbook says this section should highlight innovative features, unique selling points or competitive advantages, and may compare your idea with similar products or the product it may replace.
Project management
The textbook defines project management as the process of planning, organising and monitoring a project so that it is completed on time and within budget and scope.
For the SAT, you need to identify, schedule and monitor:
- tasks
- resources
- people
- time
One of the required project management documents is a Gantt chart.
Gantt charts
A Gantt chart is a type of bar chart or graphic timeline. According to the textbook, a Gantt chart:
- lists all tasks in a project
- organises the tasks in order
- shows which tasks must wait for other tasks to finish before they can begin
- allocates people and resources to tasks
- tracks the progress of tasks and the entire project
Key Point
You are not being assessed on how clever your software tool is. You are being assessed on how well your Gantt chart shows your understanding of project management concepts and processes.
Key project management concepts
Milestones
A milestone represents the achievement of a significant stage in a project and has zero time duration. It marks a major point of progress.
Dependencies
Tasks are interdependent. Some tasks cannot start until earlier tasks have been completed. The textbook calls these dependencies.
Predecessors and successors
Tasks that must be completed before another task can begin are called predecessors. The tasks that depend on them are successors.
Slack time
Slack time is the amount of time that a task can be delayed without delaying another task or the project completion date.
Critical path
The critical path is the sequence of tasks from beginning to end that:
- contains no slack time
- is the longest duration path
- is the minimum possible time in which the project can be completed
If a task on the critical path is delayed, the project end date is affected.
Task identification and work breakdown structure
The textbook explains that a large project should be broken into discrete tasks and subtasks by creating a work breakdown structure (WBS).
Sample SAT-style tasks listed in the textbook include:
- identifying a problem, need or opportunity
- writing the design brief
- analysing client needs and requirements
- creating a Gantt chart
- creating a working title
- writing interview questions
- conducting interviews
- writing questionnaire questions
- distributing questionnaires
- locating other data sets and secondary data
- collating data
- interpreting data and creating the SRS
- modifying the SRS after discussion with the client
- finalising the purpose and function of the software solution
Important
The textbook is explicit that you should not leave tasks out of the WBS.
Sequencing tasks
Once tasks have been identified, you need to:
- estimate how long each task will take
- place tasks in a logical order
- identify which tasks can be worked on concurrently
- identify dependencies between tasks
The textbook gives the example that you cannot write an SRS before you have interpreted the data collected in the analysis stage.
Time allocation and resources
In a Gantt chart:
- horizontal bars show task duration
- arrows show dependency
- diamond shapes show milestones
Resources may include computers, software tools and particular data sets. You should allocate resources to tasks and document them in the chart.
Monitoring and documenting progress
The textbook explains that your Gantt chart should be updated throughout Unit 3 Outcome 2 and Unit 4 Outcome 1. You should:
- mark progress throughout the project
- compare planned duration with actual duration
- annotate or modify the chart when unforeseen events change the timeline
- show how you responded to problems or changes
You submit an initial project plan in Unit 3 Outcome 2. After modifying the plan to show changes, you submit an evaluation of the plan in Unit 4 Outcome 1.