StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Programming Roles - Literature review Example

Cite this document
Summary
This paper 'Programming Roles' tells that several studies are conducted on the development of software teams that are required for different organizations. It has been obtained that software development teams need to be organizations that are flat in structure reflecting on the need of one major role in the team, of the software developer. …
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER96.9% of users find it useful
Programming Roles
Read Text Preview

Extract of sample "Programming Roles"

? Programming Roles Introduction: Several studies are conducted on the development of software teams that are required for different organizations. It has been obtained that software development teams need to be organizations that are flat in structure reflecting on the need of one major role in the team, of the software developer. There are two main skills that this software developer requires to have. These include the skills of Programming and that of Non-Programming. The skills associated with programming reflect on how good a software developer can design, code and test. The programming skills enable achievement of better performance and results. However in order to successfully achieve the roles of software, both the programming and the non programming skills are required to be balanced together. In such organizations, agile decisions work more suitably. The working environments being healthy, the software developers tend to perform and achieve better (Alberto, 2009). The present study focuses on the programming skills that are associated with the software development teams discussing about the different roles in such teams. Also, the study would reflect on some historical discussion on how software development teams and roles have changed over time and how programming roles might be expected to change over the next ten years. Software Development Team Roles: Software being flexible, often irrational, as well as incomplete, the need for agile software development teams has been considered, that is based on the basic changes required in the roles and teams. This enables development of teams that are agile and hence know how to remain agile in order to understand and manage the changes (Wells, 2009). There are different elements that constitute such agile software development teams. These include practices, values, roles, techniques, and tools. The specifications of the roles vary depending on the different software development teams (Dubinsky & Hazzan, n.d.). Software development is conducted in different ways at different organizations, and in all home office all over the globe. The practice that an organization or an individual employ to build up software might work for their definite surroundings and state of affairs, however it may be unsuccessful in another set of conditions (Breaking Down Software Development Roles, 2006, p.1). The common roles that exist within software development teams and their respective responsibilities are hereby discussed. The different roles of a software development team are Subject Matter Experts (SME), Functional Analysts (FA), Solutions Architect (SA), Development Lead (DL), Developer (Dev), Quality Assurance (QA), Deployment (Deploy), Trainer, Project Manager (PM), and Development Manager (DM) (Breaking Down Software Development Roles, 2006, pp.1-2). Critical Skills of the Different Roles in Software Development Teams: Role of SME: These people are responsible for providing all the necessary information that requires for building up. SMEs are primarily required for the articulation of the different organizational needs (Breaking Down Software Development Roles, 2006, pp.3-4). Thus the direct role or skill of programming cannot be associated with this function. Role of FA: The role of a functional analyst is to capture, combine and communicate information from the SMEs to the rest of the team of software development. Although they may not require the same skills as that of the development team, yet at times they are found to be more skilled with regard to basic processing of word, spreadsheet, and general office tools that support their jobs (Breaking Down Software Development Roles, 2006, pp.5-6). Thus this function too does not associate the skill of programming directly even though certain knowledge may be applicable. Role of SA: The programming skills may be associated with this function since the role of solution architect involves conversion of the team requirements into an architecture and design that can be used as the outline for the solution being formed. Researching and reviewing different patterns are a part of this role (Breaking Down Software Development Roles, 2006, p.7). Role of DL: This function is an intermediate between the developer and solutions architect. The role involves bringing out particulars in the design and thus create program specifications depending on which the work of the developers progress. The function of development lead begins with the expertise of major skills of a developer and includes the skill to translate concepts into deliverable solutions (Breaking Down Software Development Roles, 2006, p.8). Thus the skills of programming are highly essential for this particular role. Role of Dev: The primary role of a developer is that of creating codes and is expected to convert algorithms and technical specifications into code for the purpose of execution on a computer system. They develop and understanding and then the expertise on structures and algorithms thereby reflected on specializations (Breaking Down Software Development Roles, 2006, p.9). Hence the programming skills are directly associated with the function. Role of QA: The role of quality assurance works along with FA and the SA to convert the requirements and other documents of design into a set of testing cases and scripts for using them to authenticate that the needs of clients are met by the system. Reading and understanding the codes are thus parts of the role and hence involve the programming skills to significant extents (Breaking Down Software Development Roles, 2006, p.11). Role of Deploy: The role of deployment is to create a program that creates the operating surroundings as desired by the solution. It includes installation of prerequisites, making the necessary changes in configuration, recognizing conflicts in software, and maneuvering elements of the environment that may be required by the solution (Breaking Down Software Development Roles, 2006, p.13). Thus this role requires high skills of programming. Role of Trainer: The primary role of the trainers is to create all the necessary materials that are required to train the users of the software and hence does not necessarily involve the programming skills directly (Breaking Down Software Development Roles, 2006, p.15). Role of PM: A project manager has the responsibility of ensuring that the process of software development is being developed according to desired plan. Thus the organization of the process is under the control and responsibility of this function (Breaking Down Software Development Roles, 2006, pp.16-17). It can be realized that the programming skills would be required without which guiding others would not be possible in the team. Role of DM: The role of development manager is to keep the process on track reflecting the role of a CEO of the software development team. They also work with the owners of the business on planning and preparing for new schemes that would be involved in the group, and looks after any necessary alterations required in the plans (Breaking Down Software Development Roles, 2006, pp.18-19). Change in Software Development Teams and Roles over Time: The character and complications of software and its development have changed significantly over time. Earlier during the 1970s single processors were required for the running of different applications, where alphanumeric outputs used to be produced, and a linear source used to provide the input. However in the last 30 years, the systems have become highly complicated needing and involving the use of graphical user interface and client server architecture. Two or more processors are run repeatedly under the control of different operating systems and involving machines that are distributed geographically (Introduction to Software Engineering, n.d., p.1). Over these years, the software industry had been through different circumstances and the software development teams have been working on overcoming all kinds of odds that they came across. The teams had to fight over the delivery of bug free software, thereby trying to fix any such odds. Newer inventions as well as the costs are other factors that have modified the industry over the years along with the need for appropriate software development teams. With the developments the need for programs, as well of any documentation have also increased significantly, thus reflecting on the need for programming skills in the teams (Introduction to Software Engineering, n.d., pp.1-4). Changes Expected in Programming Roles in the Next Ten Years: Significant changes have been expected in the software development industry and hence in the programming roles over the next ten years. Teamwork in software engineering is expected to change in different ways and research would require altering its focus in order to be able to and develop such association. Particularly, it can be claimed that software that is undersized in the present times will become more accepted and popular in the near future. It is also expected that large software will be constructed by few people owing to the availability of better equipments. While developing large software projects, research would require addressing the needs for teamwork of the members of the project that would not only include the developers, but would also involve the quality assurance engineers, build engineers, architects, and operations managers. Lastly, reuse of code and sharing will modify as an effect of a budding software remix customs, developing to more freely tied and oblique collaboration (Zimmermann & Bird, n.d.). Conclusion: From the above study it can be concluded that in the development of software, the team that involves several roles has significant association with the programming roles of these functions. Understanding the different codes and developing the software require the team members to have significant knowledge on the skills of programming without which the functions cannot be successful. Over the years, the developmental process in software industry has been found to have altered with the processes being more detailed and complex in the present times. This would more reflect on the need for efficient programming skills of the software development team. Even though at times, the responsibilities may not be direct, yet in order to part of the process, the skills of programming prove to be essential. Moreover this need would increase over the future since the collaboration of team members would be expected to be needed more in the software development in future. References 1) Alberto, G. (2009). The two main skill sets of a software developer, makinggoodsoftware, Retrieved on August 24, 2012 from: http://www.makinggoodsoftware.com/2009/04/18/the-two-main-skill-sets-of-a-software-developer/ 2) Breaking Down Software Development Roles (2006), csufresno, Retrieved on August 26, 2012 from: http://zimmer.csufresno.edu/~sasanr/Teaching-Material/SAD/breaking%20down%20software%20development%20roles.pdf 3) Dubinsky, Y. & O. Hazzan (n.d.). Roles in Agile Software Development Teams, technion, Retrieved on August 25, 2012 from: http://edu.technion.ac.il/Courses/cs_methods/eXtremeProgramming/XP_Papers/Dubinsky%26HazzanXP2004includingAppendix.pdf 4) Introduction to Software Engineering (n.d.), newagepublishers, Retrieved on August 28, 2012 from: http://www.newagepublishers.com/samplechapter/001036.pdf 5) Wells, D. (2009). Agile Software Development: A gentle introduction, agile-process, Retrieved on August 25, 2012 from: http://www.agile-process.org/ 6) Zimmermann, T. & C. Bird (n.d.). Collaborative Software Development in Ten Years: Diversity, Tools, and Remix Culture, thomas-zimmermann, Retrieved on August 28, 2012 from: http://thomas-zimmermann.com/publications/files/zimmermann-futurecsd-2012.pdf Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(“Research Paper on Programming Roles Example | Topics and Well Written Essays - 1500 words”, n.d.)
Research Paper on Programming Roles Example | Topics and Well Written Essays - 1500 words. Retrieved from https://studentshare.org/information-technology/1456254-programming-roles
(Research Paper on Programming Roles Example | Topics and Well Written Essays - 1500 Words)
Research Paper on Programming Roles Example | Topics and Well Written Essays - 1500 Words. https://studentshare.org/information-technology/1456254-programming-roles.
“Research Paper on Programming Roles Example | Topics and Well Written Essays - 1500 Words”, n.d. https://studentshare.org/information-technology/1456254-programming-roles.
  • Cited: 0 times

CHECK THESE SAMPLES OF Programming Roles

MTV The Leading Multimedia Youth Brand

The programming content of the MTV channel laid emphasis on reality shows The Real World and Road Rules during the mid- to late 1990s and early 2000s.... In 2009 it added scripted comedy programs to its pprogramming portfolio With the recent downslide in the networks ratings, MTV stepped into 2009 with a massive shift in programming.... It broadcast content focuses more on reality programming.... Brian Graden is the President of programming, MTV and VH1....
5 Pages (1250 words) Essay

The Overview of Programming Languages

This essay presents a brief overview on the topic of programming languages.... The paper talks about the history of programming languages emergence, their classification, definitions, elements, features, data types, data structures and the typical instructions and control flows they use.... The essay "The Overview of programming Languages" presents a brief history of programming languages and the merits and demerits of communicating with the machine....
4 Pages (1000 words) Essay

Serialization and Externalization in Programming

In java programming, serialization has been used in the conversion of objects into a format (binary format) that can be sent over a JVM (java virtual Machine), a network or can be persisted on a disk.... The use of data serialization also leads to breakage of identity of an objects, and invasion of the programming model....
2 Pages (500 words) Assignment

Programming Environments

The paper "programming Environments" presents detailed information that UML programming stands for Unified Modelling Language, which provides a “uniform definition of modeling a program.... hellip; Rational programming may be helpful in teamwork because it allows for interaction and networking among various systems.... Thus on this basis, UML modelling is useful in the context of software modelling because while it aids in software modelling, it does not replace programming, but rather enhances the programming such that the design of one system can also be used with other systems in order to improve overall online productivity....
5 Pages (1250 words) Case Study

Computer Programming Languages

"Computer programming Languages" paper presents a detailed overview of the programming languages.... This paper also discusses the purpose of development and types of different programming languages.... The main aim of programming languages is to offer a communication link between computers and humans.... hellip; I have presented a detailed analysis of computer programming how it started, the main use of computer programming, different types, and history....
6 Pages (1500 words) Coursework

Software Development Methods for White Horse Company

However, the process is simple and consists of three major roles, three ceremonies, and three essential artifacts (Sutherland,2007).... he roles also consist of three components namely: project owner, development team, and scrum master.... he sprint planning meeting is a meeting of scrum roles at the beginning of each scrum sprint which "represents an iteration in which a set of development activities are conducted over a pre-defined period" (Cervone, 2011)....
9 Pages (2250 words) Case Study

Approaching to Programming Team

This paper is going to look into three programming team methodologies that are used by business firms and teams to conduct a development in software or information systems.... There are many approaches that programming teams can take when they are seeking to develop an information system.... hellip; This research will begin with the statement that programming is important for any organization or business firm.... There are various methodologies that can be relied on for team programming....
8 Pages (2000 words) Coursework

Stages of Computer Programming

… Computer ProgrammingIntroductionThe essay focuses on understanding the definition and stages for developing programming languages.... Through this paper, it is intended to understand how a programming language can be created, while discussing the Computer ProgrammingIntroductionThe essay focuses on understanding the definition and stages for developing programming languages.... Through this paper, it is intended to understand how a programming language can be created, while discussing the background of the development of programming languages....
8 Pages (2000 words) Essay
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us