Use Sophia to knock out your gen-ed requirements quickly and affordably. Learn more
×

The Software Development Team

Author: Sophia

what's covered
People play a critical role in software development at every phase. People conceive ideas for new software or updates to existing packages, people use programming languages to write code, people test software, and people support software. In this tutorial, we will take a look at the software development team and the roles that are typically included on a development team.

Our discussion will break down as follows:

Table of Contents

1. Software Development

Software development is the term used to describe the process that a computer program is put through when it is developed. While the process of developing software does involve writing code, it is also inclusive of planning, design, testing, and documentation. Typically, businesses will use a software development team to work through the processes associated with the development of an application. Recall that a software development methodology attempts to split the process of software development into phases. Developing software in this way makes it easier to manage the overall development process of an application, because the associated tasks at each phase can be divided across the software development team. Additionally, project managers are better able to collaborate with members of the software development team, because information at each phase can be clearly communicated to the key personnel involved with an application’s development at every phase.

term to know
Software Development
The process that a computer program is put through when it is developed.


2. The Software Development Team

The software development team are the group of people within an organization who are ultimately responsible for the planning, design, development, and testing of software. These people are generally very technical and have a background in programming and mathematics. In fact, just about everyone who works in the creation of software has a minimum of a bachelor’s degree in computer science or information systems, though that is not necessarily a requirement. In most cases, a software development team will consist of a project manager, systems analyst, software designer, software quality assurance tester, and a programmer. In most instances, there will be at least one project manager working on a software development team; however, depending on the size and scope of the project, a team may consist of more than one person for each role. The table below further elaborates on the roles and responsibilities of each position on a software development team.

Team Role Responsibility
Project Manager --Responsible for monitoring the scope, time, and budget of each project
--Works with the stakeholders of the project to keep the team organized
--Communicates the status of the project to management
--Coordinates schedules and manages resources in order to maximize the project outcomes
Software Analyst --Straddles the divide between identifying business needs and imagining a new or redesigned computer-based system to fulfill those needs
--Works with a person, team, or department with business requirements and identifies the specific details of a system that needs to be built
--Identifies and works with various stakeholders for requirement engineering (identification, analysis, elicitation, validation, and documentation)
--Translates program requirements into an information-systems design
--Creates detailed documents to describe a new system/solution
Software Designer --Builds the architecture for software applications, and makes sure it fully supports the requirements based on systems analyst’s design documents
--Designs software applications based on system requirements, organization processes, and specifications
--Creates system architecture and interface design
--Defines the overall structure of an application and divides it into component parts to be developed
Software Quality Assurance --Tests software solutions to identify problems in products
--Identifies what system features and functions need to be validated and verified
--Develops the appropriate ways to test software
--Evaluates and documents outcomes of test
--Resolves problems with products
--Maintains documentation related to testing of products and how to train personnel on software
--May be asked to develop training on new software solutions
Programmer --Must fulfill the design specifications given to them by a systems analyst
--Writes computer code for a software solution in the agreed-upon programming language
--Performs low-level elementary unit test of the written code and programs

term to know
Software Development Team
Group of people within an organization who are responsible for the planning, design, development, and testing of software.

summary
The successful development of a software solution is typically the culmination of meticulous planning and collaboration by the members of a software development team. A software development team may vary in size, depending on the scope of a development project. In some instances, small development projects may be worked on by a team where individuals play several roles (i.e. one person serves as the project manager and programmer) on the development team. Conversely, large development projects may require that each development phase be supported by the entire team. However, in all instances, a software development team will be inclusive of the same key personnel, regardless of the project's size. In this tutorial, we took a look at what software development is, the key roles and responsibilities on a software development team, and how the team fits into the overall scheme of software development.

Source: Derived from Chapter 9 of “Information Systems for Business and Beyond” by David T. Bourgeois. Some sections removed for brevity. https://www.saylor.org/site/textbooks/Information%20Systems%20for%20Business%20and%20Beyond/Textbook.html

Terms to Know
Software Development

The process that a computer program is put through when it is developed.

Software Development Team

Group of people within an organization who are responsible for the planning, design, development, and testing of software.