Task: Software Development for Social Good

You are employed by a local bank and as part of their social responsibility program, your project
team has been tasked with creating an App aimed at assisting and benefiting a South African Non�governmental organisation (NGO) of your choice. You are required to think of an innovative idea
that could lead to the development of an App for this organisation.
The following are ideas to get you started on a App for your project:
• An App for connecting an NGO with potential donors
• An educational App for an NGO focused on special needs children.
• An App for an NGO focused on addressing Gender based Violence (GBV) in South Africa
• etc
Your solution should:
• Digitise the processes involved in the NGO.
• Make the solution simple, efficient and reliable.
• Ensure hardened security is implemented.
• Use low data and free to use.
Your task is to demonstrate how you would apply project management knowledge and skills when
creating the information technology solution - the App from start to finish. Use a suitable IT (or
any other) project management methodology and project management software.
Note:
The idea you develop must be communicated to your lecturer and be accepted or approved by
your lecturer before you start the project.
Some fundamental assumptions and project requirements:
• Preferably, the system approach/project information system approach is to be followed;
• The budget is limited to R1 000 000;
• A minimum of four team members must be involved in the running of the project from start
to finish. You are expected to conduct your own research regarding the product, project
team selection, and developing a project schedule and management;
• Project duration must not exceed 15 months;
• Additional assumptions and requirements must be adequately added.
22, 23, 24 2023
© The Independent Institute of Education (Pty) Ltd 2023
Page 6 of 26
Summary of the marks and mark allocation
Question Output Mark Allocation
Q.1. GROUP TASK
Project Charter
20 20
Q.2. GROUP TASK
Work Breakdown Structure (WBS)

15
15
Q.3. GROUP TASK
Project Solution
Activity list showing where possible start date,
finish date, duration, dependencies, milestones,
resources allocation.
40 40
Q.4. GROUP TASK
Agile Task List
10 10
Q.5.1. INDIVIDUAL TASK:
Peer Evaluation Report
5
15
Q.5.2 INDIVIDUAL TASK
Self-Reflection Report
10
TOTAL Assignment Submission 100

Project Charter

Project Title: Connecting NGO with Potential Donors App Development
Project Manager: [Project Manager Name]
Project Start Date: [Start Date]
Project End Date: [End Date]
Budget: R1,000,000
Team Members: [List of team members]

Project Objectives:
1. Develop an App that connects NGOs with potential donors in South Africa.
2. Digitize the processes involved in the NGO-donor connection.
3. Provide a simple, efficient, and reliable platform for NGOs and donors to interact.
4. Ensure hardened security measures are implemented to protect user data and transactions.
5. Create an App that is low data and free to use to encourage widespread adoption.

Project Scope:
The project will involve the development of a mobile application that enables NGOs to create profiles and provide information about their initiatives and funding requirements. Potential donors will be able to browse through the NGO profiles, review their projects, and make donations securely through the App.

Deliverables:
1. App development and design.
2. NGO profile creation functionality.
3. Donor browsing and donation functionality.
4. Secure payment gateway integration.
5. User authentication and data security measures.
6. Low data consumption optimization.

Constraints:
1. Limited budget of R1,000,000.
2. Project duration should not exceed 15 months.

Assumptions:
1. The NGO already has a website that can be used as a reference for the App design.
2. The NGO has existing donor records that can be migrated to the App.
3. Adequate internet connectivity is available for the target user base.
4. The App will be developed for both Android and iOS platforms.

Risks:
1. Delay in securing necessary approvals and permissions from NGOs and donors.
2. Technical challenges in integrating the payment gateway.
3. Lack of user adoption due to competition from existing donation platforms.
4. Data breaches and security vulnerabilities.

Stakeholders:
1. NGO representatives
2. Potential donors
3. Project team members
4. App users

Approval:
[Project Manager Name]
[Date]

To create an innovative App for a South African NGO focused on addressing Gender-based Violence (GBV), we will follow the Agile project management methodology. This approach allows for continuous iterations and feedback, ensuring an efficient and reliable solution. We will use project management software like Jira to track progress and manage tasks.

1. Project Charter:
We will begin by creating a project charter that outlines the project's goals, objectives, deliverables, and stakeholders. This document will also include the project's budget, timeline, and scope.

2. Work Breakdown Structure (WBS):
Next, we will create a Work Breakdown Structure (WBS) to break down the project into manageable tasks and subtasks. This will help in resource allocation and task dependencies. Each task in the WBS will have a unique identifier, start and finish dates, duration, and assigned team members.

3. Project Solution:
To develop the GBV-focused App, we will follow these steps:

a) Requirements Gathering: We will conduct interviews and research to identify the specific needs and requirements of the NGO and their target audience. This will include understanding the types of features, functionalities, and security measures required.

b) Design Phase: Based on the gathered requirements, we will create wireframes and mockups of the App's user interface. This will involve creating intuitive and user-friendly designs that address the NGO's specific needs.

c) Development Phase: Using agile development practices, we will begin coding and building the App. The development will be iterative, with regular sprints and feedback loops. We will prioritize the most critical features first and continuously release new versions of the App.

d) Testing Phase: During development, we will conduct unit tests, integration tests, and user acceptance tests to ensure the App meets quality standards and user expectations. We will also perform security testing to ensure hardened security measures are implemented.

e) Deployment Phase: Once the App development and testing are complete, we will deploy the App to production servers or app stores. We will prepare the necessary documentation and provide support for initial users.

f) Maintenance and Updates: After deployment, we will continue to monitor and maintain the App. Regular updates and bug fixes will be released based on user feedback and evolving needs.

4. Agile Task List:
As part of the Agile project management approach, we will maintain a task list in Jira or similar software. This task list will include individual tasks, their priorities, and estimated completion dates. The team members will update their progress regularly, and the project manager will monitor and adjust the task list as needed.

5. Peer Evaluation Report:
Each team member will assess the contributions and performance of their peers throughout the project. This evaluation will be based on criteria such as teamwork, communication, problem-solving, and adherence to timelines. The evaluations will be compiled into a report and submitted.

6. Self-Reflection Report:
Each team member will reflect on their individual performance, lessons learned, and areas for improvement. This self-reflection report will showcase the individual's understanding of their role in the project and their ability to contribute effectively.

In summary, by following the Agile project management methodology and using project management software like Jira, we will create an innovative GBV-focused App for the South African NGO. The process includes project charter creation, work breakdown structure development, project solution development, agile task management, peer evaluation, and self-reflection.

To create an App for a South African NGO as part of the software development for social good project, you will need to follow a project management approach. Here are the steps you can take to create the App from start to finish:

1. Idea Development:
- Research and brainstorm innovative ideas that would benefit the chosen NGO.
- Consider the needs and goals of the NGO, such as connecting with donors, education for special needs children, addressing gender-based violence, etc.
- Communicate and get approval from your lecturer for the chosen idea.

2. Project Charter:
- Create a project charter that outlines the objectives, scope, stakeholders, budget, and timeline for the project.
- Clearly define the purpose of the App and how it will assist the NGO.

3. Work Breakdown Structure (WBS):
- Create a WBS to break down the project work into manageable tasks.
- Identify the major project deliverables and then break them down into smaller sub-tasks.
- Assign responsibilities and resources to each task.

4. Project Solution:
- Develop an activity list that includes start dates, finish dates, durations, dependencies, milestones, and resource allocations.
- Determine the technologies, frameworks, and tools required for the development of the App.
- Consider digitizing the processes involved in the NGO, making the solution simple, efficient, reliable, and secure.
- Ensure the App is designed to use low data and is free to use to reduce barriers to access.

5. Agile Task List:
- Use Agile project management methodology to manage the development of the App.
- Create a task list that includes user stories, tasks, estimated effort, and priorities.
- Use project management software, such as Jira or Trello, to track progress, assign tasks, and collaborate with the team.

6. Team Selection:
- Determine the required skills and expertise for the project.
- Select a diverse team with members who possess the necessary skills, such as software development, UI/UX design, backend development, security, etc.
- Assign team members to specific tasks based on their expertise and capabilities.

7. Project Schedule:
- Develop a project schedule that includes the start and end dates for each task.
- Consider dependencies between tasks and allocate sufficient time for testing, QA, and bug fixing.
- Ensure the project duration does not exceed 15 months.

8. Budget Management:
- Allocate the available budget of R1,000,000 effectively among the project activities.
- Track and manage expenses throughout the project.

9. Security Implementation:
- Determine the security requirements for the App.
- Implement hardened security practices to protect user data, prevent unauthorized access, and ensure data privacy.

10. Testing and Quality Assurance:
- Develop a testing plan and conduct thorough testing to ensure the App is functioning as intended.
- Perform regular quality assurance checks to address any issues or defects.

11. Deployment and Support:
- Coordinate the deployment of the App to the intended users.
- Provide ongoing support and maintenance to ensure the App remains functional and secure.

12. Peer Evaluation and Self-Reflection:
- Conduct a peer evaluation to assess the contributions and performance of each team member.
- Submit a peer evaluation report as part of your individual task.
- Reflect on your own performance and submit a self-reflection report.

By following these steps and using appropriate project management methodologies and software, you can successfully create the information technology solution - the App for the chosen NGO, while meeting the project objectives, constraints, and requirements.