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

Testing Software and How It Is Controlled - Coursework Example

Cite this document
Summary
This coursework "Testing Software and How It Is Controlled" focuses on an analysis carried out to present stakeholders with facts concerning the quality of the product or service under investigation. It can also give an objective view of the software to understand the risks of software realization…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER95.9% of users find it useful
Testing Software and How It Is Controlled
Read Text Preview

Extract of sample "Testing Software and How It Is Controlled"

Test Essay Test Essay Testing/User Testing Testing (software) is an analysis carried out to present stakeholders with facts concerning the quality of the product or service under investigation (Ammann & Offutt, 2008). Software testing can also give an objective, sovereign view of the software to permit the business to understand and acknowledge the risks of software realization. Test methods include, but are not restricted to, the process of using an application or program with the aim of finding software errors, bugs or other defects (Humble & Farley, 2010). Testing begins the same time as the system design. Test groundwork is carried out by a unique group to make sure that each and every element is correctly handled. Unit test is managed by the programmer who creates the code. Every programmer tests their own code. Any bug found is rectified by the programmer, and the programs are reevaluated till clean (Humble & Farley, 2010). When testing has been done to all the programs, and no error has been found, the test begins. The division of debugging from testing was originally introduced, in 1979, by Glenford Myers (Ammann & Offutt, 2008). Even if, his goal was on breakage testing ("an effective test is one that locates a bug") it demonstrates the need of the software engineering society to divide fundamental development actions, such as repairing, from that of authentication. Concerning the periods and the diverse objectives in software testing, diverse roles have been set: manager, test lead, test designer, test analyst, tester, test administrator and automation developer. Ammann & Offutt (2008) classified the goals and phases in software testing in the following stages: Debugging oriented (1956) Demonstration oriented (1957–1978) Destruction oriented (1979–1982) Evaluation oriented (1983–1987) Prevention oriented (1988–2000) How Testing is Controlled Test control can be considered as the test management tasks needed throughout the test procedure so as to keep the testing aligned to the software development procedure, the requirements of the project, and the requirements of the firm wanting to use the software (Miller, DeCarlo & Mathur, 2004). These tasks take place as stipulated, based on the decision of the test manager, as well as other associates of the project team, and can also occur on a premeditated basis (Miller, DeCarlo & Mathur, 2004). Testing is controlled by ensuring that Software Quality Control is set up. Software Quality Control refers to a set of protocols used by companies to make sure that a software product will fulfill its quality objectives at the best value to the client, and frequently to improve the firm’s capacity to produce more software products in the future. Software quality controls are specified requirements, both functional and non-functional, such as supportability, usability and performance (Cangussu, DeCarlo & Mathur, 2002). It also refers to the capacity for software to perform effectively in unpredictable scenarios and maintain a fairly low fault rate. These premeditated procedures and requirements bring about the idea of software testing, Validation and Verification It is different from software quality assurance, which incorporates reviews of the quality management system alongside a standard. While software quality control refers to control or management of products, software quality assurance, on the other hand, is a control of processes. This function checks whether or not a software project follows its premeditated procedures and processes, and that the project brings out the anticipated internal and external products (output) (Miller, DeCarlo & Mathur, 2004). Managing Creativity When managing creativity with regards to software management, it is vital to differentiate two main viewpoints: activity-level (or task-level) analysis, as well as process-level analysis. The activity-level viewpoint pertains to the issues of how pockets of creativity are typified and how they can be endorsed (Sommerville, 2006). The process-level viewpoint, on the other hand, takes a look at the main software process; the existence of creative roles within a software procedure significantly affects the entire process. Software creativity takes place when people take time to investigate the design space of potential, instead of instantly settling on the first solution, which comes to mind. Creating a software product is one of the key, as well as most creative activities, which humans embark on. The main curb in software is the human mind, and the restrictions, which are all self-imposed. In the model discussed by Schach (2011), the reader sees a linear, chronological model of Software Development, a matter that radically decreases people’s ability to develop extremely great software (Sommerville, 2006). With the exploitation of creativity, it is likely to develop great software. The only issue is that by doing so, firms need to let these developers have their freedom in order to explore diverse designs, as well as the ability to select the design, which most strongly matches the spirit of the needs instead of the letter of the needs documents; however, firms are not willing to fulfill this. Schach (2011) argues that a software creator should create three alternative software designs so that the chances of one or yet all of them to be successful. Managing Scalability/Managing Large Projects Software developers go through major complexities managing growth of their software’s scale and functionality. In order to be able to manage scalability, Beck (2000) has the following recommendations; developers should organize their work in a manner, which permits them to be open to change due to the market or users’ needs. Developers should distill user needs into user stories. They manage a product surfeit of user stories. It is also vital for developers to manage scope and priority, as well as setup diverse environments for their project, along with facilitate their duties to progress across these environments (Tian & Noore, 2005). It is advisable for software developers to discover an appropriately continuous incorporation setup for their work and develop an application’s outline and an applicable data-model. They should work together in a cross-skilled team. And finally, software developers should ensure that their software code is clean, test driven, as well s object oriented (Beck, 2000). Finally, when it comes to large software management, it is vital for all stakeholders during the development to know that software development is not product manufacturing. Costs and schedules are not, by any means, interchangeable (Beck, 2000). The most prominent data for gauging success is the developer’s own and the developer should not get lost in a lot of details. It is vital to know that success and change never come for free; therefore, proper planning and monitoring of the work is advisable (Tian & Noore, 2005). Software developers have a tendency of using estimates as a project plan; however, and estimate is simply and estimate, and when using in project management, then the consequences might be harsh. The Conversion Process, Techniques and Issues Many firms have invested in custom-made software for their company-specific needs. These developments have normally occurred over a long period of time, perhaps even on numerous development stages, in several programming languages and by many software engineers (Sarre, Myka & Güntzer, 2009). The conversion process/procedure comprise of three steps: importing existing source code, optimization and documentation and, finally, export to a novel programming environment (Penedo, 2005). In this first process, the source code of the present application should be introduced into the conversion system. Once brought in into the Object Repository, a large variety of processes are initiated. All independencies and dependencies of the source code, data files and variables, are identified. After optimization done together with documentation, the code is taken to the new development stage. Some of the software conversion methods include parallel conversion, direct conversion, pilot conversion and phased conversion. Parallel conversion is keeping the previous system running along with the new-fangled system for the first few months after the initiation of the new system (Penedo, 2005). Direct conversion concerns taking the previous system offline and putting the fresh system online in a day. Pilot conversion concerns utilizing the new system in simply a small section of the firm (Sarre, Myka & Güntzer, 2009). Finally, phased conversion concerns taking offline some elements of the former system and substituting them with matching parts of the fresh system. Maintenance expenses for such systems are escalating. New functionalities, for instance, the link to the Internet, are extremely difficult, if not viable to execute. Documentation for these systems is ever missing or frequently outdated. Therefore, dedicated hardware becomes outmoded (Sarre, Myka & Güntzer, 2009). Staffing Levels/Issues/Deadlines The staffing level comprises of the test groups and the staff group. As the software developers are working on their full design and programming, the test group, on the other hand, arranges for the system test, the approval test, as well as the site test. Such tests are not incorporation tests. The aim of the system test is to evaluate the function and not the arrangement of the system (2007). The staff group is split into two parts: administrative support and technical support. The technical group manages computer time, database administration, systems administration and training, housekeeping and completes particular assignments (Endres & Rombach, 2003). The administrative group, on the other hand, is accountable for report control, document control, secretarial administrative services and contract change control. The people who make up these two groups are the surgeon, co-pilot, administrator, editor, secretaries, program clerk, toolsmith, tester and the language lawyer. The teams work as a unit. The surgeon is responsible for all technical decisions and sets all technical rulings (Selby, 2007). Therefore, there are no distinctions of interest, and the surgeon resolves all technical quarrels. The magnificence of this scheme is that the programming and design all flow from one brain. This leaves, in reality, no possibility for miscommunication concerning technical facts of the system. But, in spite of its elegance, the chief programmer group is almost impossible to execute. It needs not two superprogrammers, which, in reality, is difficult to work (Selby, 2007). The mission is made much harder with the urge to have one of the extremely talented programmers (co-pilot) take a back seat and act as a help. Project Organization When it comes to project organization, Lin & Huang (2009) advise firms to focus on the three P’s: people, process and problem. The project organization includes the manner in which staff is structured and ways for project reporting. People are imperative components to the accomplishment of a software project. Some of the key players are the senior managers, project managers, customers and the end users (Ocker, 7). Project managers are expected to portray traits such as problem solving, achievement, managerial identity and influential, as well as team building. The project team should be organized into a number of diverse structures. Suitable team units rely on the type of problem. These stakeholders the people who hold the team together to ensure that there is a product to offer to the market in the first place (Lin & Huang, 2009). A major problem associated to project organization is a develop replica, which stresses on factors that affect social, psychological, as well as organizational procedures, in order to illustrate how they persuade quality and productivity. This model comprises of the following levels: individual, team, project, company and business milieu (Ocker, 7). Condition mistakes frequently happen when project designers lack suitable application knowledge to interpret client intentions. Unique project designers stand out than a majority of other designers who do not put too much effort to their projects. Designers of the project must choose the process, which is appropriate and suitable for the project at hand. The project manager is the person who decides the process model. He or she defines the preface plan rooted in the process model (Lin & Huang, 2009). Project Structures The project structure includes the manner in which staff is ordered and techniques for project reporting. Both the reporting mechanisms and the team structure are greatly dependant on the duration and size, along with the temperament of the project (Jeong & Schach, 2005). The Scrum structure consists of three roles: the owner, the master and the team. The owner is the person who signifies the firm. The master is the project manager accounted for controlling the process. Finally, the team is composed of those who execute the project. An advantage of the scrum structure is that it allows good development, which results in a commercial product even when the project is not complete. However, it can be hard for the master to structure, plan and organize a project, which lacks a clear meaning (Kazman & Klein, 2006). Furthermore, normal changes, normal product delivery and doubt concerning the precise nature of the product make for a somewhat intense life cycle for everyone concerned. Project Roles Any software-based product-development project has at its core; a group of people aiming to fulfill the collective requirements of the project’s stakeholders (McCarthy, 2006). This main team, on the other hand, depends on an extended team to provide it with the vital context through which it functions. Both groups can only do a great job so as to be sure of a prominent result. The interaction designer ensures the interaction objectives of the system are visibly explained and concurred upon by every stakeholder (Acuna & Juristo, 2004). The chief engineer determines the needs of stakeholders, which the product should meet and frequently manages the development of the program to make sure it is on target to meeting those requirements. The architect, on the other hand, makes sure that the product or service being developed attains its performance, as well as other qualitative needs. The GUI designer helps in writing and clarifying user personas and stories. The requirements analyst implores and elaborates stakeholder requirements and needs. The storyboard artist illustrates user stories during planning sessions and workshops (Acuna & Juristo, 2004). The content artist, on the other hand, creates, enhances and modifies graphical content to go with its presentation context. The technical writer provides early comment to the main and extended groups concerning desirable features. The internal marketer generates leads for extra features amongst the stakeholder community (McCarthy, 2006). And finally, the project public relations officer promotes the system and its elements amongst the vital stakeholders in order to maximize positive comments, their partaking in the project and the visibility of the group, as well as its outputs. References Acuna, S. T., & Juristo, N. (2004). Assigning people to roles in software projects. Software Practice and Experience, 34(4), 675–696. Ammann, H., & Offutt, P. (2008). Introduction to software testing. Cambridge, UK: Cambridge University Press. Beck, K. (2000). Extreme programming explained: Embrace change. Addison-Wesley Longman: Reading, MA. Cangussu, J. W., DeCarlo, R. A., & A. P. Mathur. (2002). A formal model of the software test process. IEEE Transactions on Software Engineering, 28(8), 782-796. Endres, A., & Rombach, H. D. (2003). A handbook of software and systems engineering: Empirical observations, laws and theories. Addison-Wesley Longman: Reading, MA. Humble, J., & Farley, D. (2010). Continuous delivery: Reliable software releases through build, test, and deployment automation. Addison-Wesley Longman: Reading, MA. Jeong, L., & Schach, R. (2005). An Empirical Investigation of the Impact of the Object-Oriented Paradigm on the Maintainability of Real-World Mission-Critical Software. Journal of Systems and Software, 77(3), 131-138. Kazman, B., & Klein, H. (2006). The essential components of software architecture design and analysis. Journal of Systems and Software 79, 1207-1216. Lin, C., & Huang, C. (2009). Staffing level and cost analyses for software debugging activities through rate-based simulation approaches. IEEE, 58(4), 711 - 724. McCarthy, R. (2006). Breaking down software development roles. New Jersey: Jupitermedia Corp. Miller, S. D., DeCarlo, R. A., & Mathur, A. P. (2004). Modeling and control of the incremental software test process. IEEE, 2, 156-159. Ocker, R. (2011). Software project organization concepts. New York: Oxford University Press. Penedo, M. (2005). A project master database for software engineering environments. Proceedings of the software engineering conference. Los Alamitos, CA: CS Press. Sarre, F., Myka, A., & Güntzer, U. (2009). Hypertext for software engineering: automatic conversion of source code and its documentation into an integrated hypertext. Database and Expert Systems Applications, 5(7), 463-468. Schach, S. R. (2009). Object-oriented and classical software engineering (8th ed.). New York: McGraw-Hill. Selby, R. W. (2007). Software engineering: Barry W. Boehms lifetime contributions to software development, management, and research. New York: John Wiley & Sons. Sommerville, I. (2006). Software engineering. Addison-Wesley Longman: Reading, MA. Tian, L., & A. Noore, J. (2005). On-line prediction of software reliability using an evolutionary connectionist model. Journal of Systems and Software, 77(2), 173 -180. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(Testing Software and How It Is Controlled Coursework Example | Topics and Well Written Essays - 2250 words, n.d.)
Testing Software and How It Is Controlled Coursework Example | Topics and Well Written Essays - 2250 words. https://studentshare.org/information-technology/1803665-test-essay
(Testing Software and How It Is Controlled Coursework Example | Topics and Well Written Essays - 2250 Words)
Testing Software and How It Is Controlled Coursework Example | Topics and Well Written Essays - 2250 Words. https://studentshare.org/information-technology/1803665-test-essay.
“Testing Software and How It Is Controlled Coursework Example | Topics and Well Written Essays - 2250 Words”. https://studentshare.org/information-technology/1803665-test-essay.
  • Cited: 0 times

CHECK THESE SAMPLES OF Testing Software and How It Is Controlled

Determining When to Stop Testing

The big question here is how much testing needs to be done, because the testing requires time, which is precious because the clients and users want the product as soon as possible.... The paper will include sources that will be used in order to support the question of how much testing needs to be done in order to ensure a good quality product and to show that there is a problem when too much or too little testing is done.... A review of literature will be presented to show how we come up with the conclusion....
6 Pages (1500 words) Essay

Importance of Project Management

n terms of development productivity, it measures one unit of effort could result in how many products.... Question 1 A: There are certain aspects to be considered in terms of whether the development should be made in house or brought from outside, and also in terms of the risks involved and the profits that may accumulate whether there would be technical support for the project and… The projects which offered the best cost benefit ratio could be considered. Question 1 B: The process of monitoring project costs could be done through constant calculation of costs and their The cost information that would be necessary would be in terms of the length of the project, the total costs of the project, the efforts of the staff that is Person: Days Ratio....
4 Pages (1000 words) Essay

A critical analysis of software testing tools and techniques

The general goal of all these testing tools and techniques is to produce a high quality software that meets customer requirements, by developing it in controlled circumstances (Luo, 2009).... how and when testing is carried out also depends on customer requirements and desired results, the Project Manger's way of working, and the Project Lifecycle model.... Your… software testing is an activity carried out to evaluate a software attribute or capability and as a way of determining whether it meets desired results (Pan, 1999)....
4 Pages (1000 words) Essay

Wire Robotic Vehicle Testing

This ensures that when the robot components are assembled together in the final of the project, the robot will be ready to be controlled from the computer in the wireless mode.... The paper “Wire Robotic Vehicle Testing” describes how to test the robot.... esting the robot involves testing each component individually first....
8 Pages (2000 words) Essay

Benefits of Using Simulation within Appropriate Manufacturing Organizations

They need to understand their product designs and how to make the products to their customers.... The capital expenditures and system constraints can also be controlled as a result of the implementation of the simulation process (Nutaro et al.... It involves the creation of a simulated history of a system whereby the study of that simulated system is used in making observations concerning the operating attributes of the real world… Computer simulation has been in use for decades and it has been essential in solving a number of business issues (Heilala 1999, p....
5 Pages (1250 words) Essay

Debreifing

UNITRAK software firm could have been given chance to install the software and train all the employees as this could have cut cost on training and relieve Kovecki the computer analyst from the training job to handle other system affairs of the company like interviews.... Risks that may occur during the changeover must be controlled.... He wasted a couple of months in learning how the organization operates and training himself on how to use the system....
2 Pages (500 words) Research Proposal

How the Acquisition of AGM088E Military Equipment Has Been Managed through the Process of T&E

This missile is the only tactical extended multi-role, supersonic strike weapon that is controlled by the US military, and the Italian army.... The author of the "how the Acquisition of AGM088E Military Equipment Has Been Managed through the Process of T&E" paper focuses on the AGM088E that is an air to a ground missile which has a medium-range capability.... This paper analyzes how the acquisition of this military equipment has been managed through the process of T&E....
6 Pages (1500 words) Coursework

Programmable Logic Controllers

esto PLC StationsIn the automation lab, the following stations are supplied; Sorting Station, Separating Station, Handling Station, Processing Station, Pick Station, Buffering Station, Place Station, Fluidic Station, testing Stations, Muscle Press Station, Place Station, Punching Station, Distributing Station and the Assembly Station....
6 Pages (1500 words) Coursework
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