Free Essay

The Case for Software Internal Quality

In:

Submitted By phronesis
Words 632
Pages 3
THE CASE FOR INTERNAL SOFTWARE QUALITY While this might look like stating the obvious, I still find that there are organisations especially in this part of the world (Nigeria) that have not really imbibed software quality assurance practices. From experience, I find that its because management has not really taken a serious look into the merits and demerits of internal software quality. What is internal software quality and what how does it differ from Just plain Software Quality? When it comes to software quality assurance, it is most commonly viewed in two aspects (There could be more). • External software quality. • Internal software quality. This is derived from Steve McConnell's division of software characteristics in external and nternal characeteristics. External software quality refers to the parts of software that face a user. These refer to: • Functionality • Usability • Reactivity • Security • Availability • Reliability All these aspects of software quality can verified by testing the software as a whole – end-to-end tests. Most often this is the aspect of the software that users and non technical management focus on. Is it doing what the user wants it to do? While this is both ok and required, it is not enough to ascertain the quality of an application. Internal Software Quality refers to the quality of the source code itself. These refer to: • Application Architecture Practices • Coding Practices • Application Complexity • Documentation • Portability • Technical & Functional Volume Each of these can be studied in detail to fully understand the concepts and their impact on software quality. One of the most interesting points to note about these qualities is that they affect the overable desirable qualities of software. The Consortium for IT Software Quality (CISQ) has defined 5 major desirable characteristics of a piece of software needed to provide business value. These are: • Reliability • Efficiency • Security • Maintenability and • Size You can check out this diagram to see the relationship between Internal Software quality and the Quality of the piece of software as a whole.

Image source: http://en.wikipedia.org/wiki/File:SoftwareQualityCharacteristicAttributeRelationship.png This means that for management to achieve both the short and long term goals of a software project, it must pay close attention to the internal and structural quality of software.

HOW TO MEASURE INTERNAL SOFTWARE QUALITY This cannot be carried out by testing the application as a whole. This is done by means of static code analysis. There are tools to automate this and output metrics to enable management verify the quality of a piece of software. According to the Wikipedia article on Software Quality, The root causes of poor reliability are found in a combination of non- compliance with good architectural and coding practices. This non-compliance can be detected by measuring the static quality attributes of an application. On Efficiency: As with Reliability, the causes of performance inefficiency are often found in violations of good architectural and coding practice which can be detected by measuring the static quality attributes of an application. These static attributes predict potential operational performance bottlenecks and future scalability problems, especially for applications requiring high execution speed for handling complex algorithms or huge volumes of data. On Maintenability, poor maintainability is typically the result of thousands of minor violations with best practices in documentation, complexity avoidance strategy, and basic programming practices that make the difference between clean and easy-to-read code vs. unorganized and difficult-to-read code From the foregoing, management stands to benefit in the short-term(might not seem obvious) and in the long-term because a source code with a poor internal quality has a short life span. It might meet the functional requirements in the short term but with each request for modification, the end-of-life of the source code approaches quickly because if becomes very expensive to fix minor bugs.

Similar Documents

Premium Essay

Software Testing Overview

...Software Testing What is testing? Testing is the process of evaluating a system or its component(s) with the intent to find that whether it satisfies the specified requirements or not. This activity results in the actual, expected and difference between their results. In simple words testing is executing a system in order to identify any gaps, errors or missing requirements in contrary to the actual desire or requirements. Who does testing? It depends on the process and the associated stakeholders of the project(s). In the IT industry, large companies have a team with responsibilities to evaluate the developed software in the context of the given requirements. Moreover, developers also conduct testing which is called Unit Testing. In most cases, following professionals are involved in testing of a system within their respective capacities: Software Tester Software Developer Project Lead/Manager End User When to Start Testing? An early start to testing reduces the cost, time to rework and error free software that is delivered to the client. However in Software Development Life Cycle (SDLC) testing can be started from the Requirements Gathering phase and lasts till the deployment of the software. However it also depends on the development model that is being used. For example in Water fall model formal testing is conducted in the Testing phase, but in incremental model, testing is performed at the end of every increment/iteration and at the end the whole application is tested. Testing...

Words: 6175 - Pages: 25

Premium Essay

Stakeholder's Guide

...project (Robertson & Robertson, 2004). These guideline allows the project manager to use each team member to their fullest abilities. The scenarios below shows what the benefits using a stakeholder map to properly show the understanding of each person’s responsibilities. Scenario 1: Title Organization Role Interest Power Sponsor External Provides Finances for Project High High Government External Provides Rules and Regulations for the business Low High Vendors External Provide Supplies as needed Low High General Manager Internal Company Manager Supervisor of Project Manager High High HR Manager Internal Ensure Project meets workers needs High High Auditor Internal Ensure compliance and execution Low Low Finance Director Internal Budget High Low Quality Manager Project Team Quality and Compliance High High Business Analyst Project Team Forecasting and Research High High Project Manager Project Team Project control, Delegation and quality product High Low As with any new electronic system that a company wants to adapt there are many concerns that will be faced. The first thing of concern will be how the control of records will be handle, even though the company is moving towards an electronic system they still need to maintain the manual records they have. The company first have to determine how long they need to keep the manual files on hand for. This process takes all of the company’s top people to come with a plan to make this transition as easy as possible...

Words: 764 - Pages: 4

Premium Essay

Discuss the Need for Outsourcing the Internal Audit Function in a Company

...Discuss the Need for Outsourcing the Internal Audit Function in A Company Traditional internal audit function is defined as an independent appraisal activity to review internal control activities in companies. Dezoort (2001) implies that with the extension of business activities, the internal audit function has evolved from the traditional supervision to value adding which includes a wider scale of audit-related work so as to maximize the value of a business company. This focus on adding value to the corporation through a variety of internal audit services has raised concerns about the ability of in-house auditors to perform the wider-scale audit function in a more professional and cost-saving manner (Chapman and Anderson, 2002). Due to fierce market competitions and overcapacities, company managements set out to downsize company staff and put the focus on its profit-producing business, tending to outsource (referred to the practice that one accounting firm provides audit-related services for a business organization) internal audit function to engage external specialists to present a highly cost-saving and professional performance. Although some evidence suggests that there are many limitations of outsourced activities, this essay asserts that outsourced internal audit function plays an essential role in the development process of a corporation and there is a need to outsource that function. In consequence, these positive effects on companies will be described principally...

Words: 2899 - Pages: 12

Premium Essay

Chapter1Sqa

...The Uniqueness of Software Quality Assurance • • • • • • Part 1 The software quality challenge What is software quality? Software quality factors The components of the software quality assurance system – overview The software quality challenge • The Software Quality Challenge • Differences between Software Products and Industrial Products • Only Chance to Discover Defects: • The Environment for which SQA Methods are Developed The Software Quality Challenge • This chapter is essentially about two major topics: – The uniqueness of software quality assurance – The environments for which SQA methods are developed. Introduction • Why study Quality Assurance and Testing? • With all the methodology wars, numerous processes, huge number of tools to assist in software development, why this separate topic? • What makes SQA important that it deserves so much attention? • SQA is a key course in software engineering curricula. Differences between Software Products and Industrial Products • High complexity – The potential ways in which a software product can be used with different data / data paths reflecting different incoming data is almost infinite. – Manner in which industrial products can be used are usually well-defined. – Think about software: • every loop with different values of data reflects a different opportunity to see software fail. • In truth, the number of paths through a non-trivial software product is infinite...

Words: 1574 - Pages: 7

Premium Essay

Software Testings

...Software Testing Types: Black box testing – Internal system design is not considered in this type of testing. Tests are based on requirements and functionality. White box testing – This testing is based on knowledge of the internal logic of an application’s code. Also known as Glass box Testing. Internal software and code working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions. Unit testing – Testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. may require developing test driver modules or test harnesses. Incremental integration testing – Bottom up approach for testing i.e continuous testing of an application as new functionality is added; Application functionality and modules should be independent enough to test separately. done by programmers or by testers. Integration testing – Testing of integrated modules to verify combined functionality after integration. Modules are typically code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems. Functional testing – This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application. System testing – Entire system is...

Words: 6035 - Pages: 25

Free Essay

Finance and Risk

...is the key for improving these companies’ internal processes. A customer satisfaction rating (CSR) is often obtained through a questionnaire—the customer satisfaction survey (CSS). This method, however, suffers from the drawback of customers likely being emotionally influenced while filling out these questionnaires. Naomi Karten, an expert on the subject of customer satisfaction (www.nkarten.com), states in her seminar Tales of Whoa and the Psychology of Customer Satisfaction: “People tend to rate service higher when delivered by people they like than by people they don’t like.” Karten also goes on to describe what one can do to be “likable.” More often than not, Karten contends, the CSS rating received from the customer represents perceived feedback rather than impartial feedback. This is not to say that companies do not get any value from customer-filled CSR forms. But they must recognize that responses can be emotionally based, and that the customer is not one person, but an organization—meaning multiple people. While so, only one person represents the organization and fills out the survey. Would this person consult all concerned before filling it out? Ideally, he or she should, but often, he or she will not. This gives rise to the need for a way to compute a CSR based on internal data—data that is free from bias and that gives a realistic metric on customer satisfaction. Why Should We Measure Customer Satisfaction with Internal Data? Consider the following three scenarios:...

Words: 3339 - Pages: 14

Premium Essay

Implementing the Balanced Scorecard in Greece: a Software Firm's Experience

...LRP Long Range Planning 37 (2004) 351–366 long range planning www.lrpjournal.com Implementing the Balanced Scorecard in Greece: a Software 5 Firm’s Experience Alexandros Papalexandris, George Ioannou à and Gregory P. Prastacos The Balanced Scorecard (BSC) is a relatively new approach to strategic management and performance measurement and control, which has generated substantial interest in the academic and industrial communities. This paper presents the experience from the implementation of a specific BSC model at a large software development company in Greece. The study illustrates and evaluates the main obstacles and shortcomings, as well as the critical success factors that characterise such BSC projects, while offering managerial insights and guidelines for similar implementations. Q 2004 Elsevier Ltd. All rights reserved. Introduction The shortcomings of traditional management control and performance measurement motivated the development of the Balanced Scorecard (BSC), a management system incorporating all quantitative and abstract measures of true importance to an enterprise.1 The two key elements of the BSC are: (a) Clustering of similar types of measures into groups (perspectives); (b) Limiting the measures and linking their values to improve clarity, allow for transparent communication throughout the organisation, and effectively manage change. 5 An earlier and compact version of this paper was presented at the IEEE International Engineering Management...

Words: 7930 - Pages: 32

Premium Essay

Testing Basics

...What is Rational Unified Process? RUP is a Software Engineering Process. It is a disciplined approach to assigning tasks, roles and responsibilities within a development environment. RUP identifies the static and dynamic aspects of an SDLC. The static aspects are called the Workflows and the dynamic aspects are called Phases. The various Phases are Inception, Elaboration, Construction, and Transition. The 9 Workflows defined by RUP are Business Modeling, Requirements, Analysis and Design, Implementation, Test, Deployment, Configuration and Change Management, Project Management, and Environment. When is it appropriate to use RUP? The basic goal of RUP is to ensure productivity of high-quality software that meets the needs of its end users within a predictable schedule and budget. Any project team that aims at producing a software application that is not only meets the quality criteria but also meets the schedule, budget and maintenance criteria. Advantages of RUP? RUP, if implemented as per the guidelines by an organization, can result in producing an application that meets the standards of QA. It contains several tools under its belt that are easy to learn and apply. Disadvantages of RUP? Although RUP has all the benefits, it has its share of drawbacks. In order to implement RUP in an organization - a major re-engineering process of the existing development system has to be performed - Tools needed to implement RUP are extremely expensive and may not...

Words: 2172 - Pages: 9

Free Essay

Living Tqm

...the testing newsletter in Grapecity. * Excellent problem solving and troubleshooting skills. * Presented papers at international conferences. * Regular writer for Software testing magazines. * String drive to learn new things. * Fluent in English, Hindi and Punjabi. Languages, Tools and Technologies * VB.NET, MapBasic, C, SQL * Jira, Lotus Notes, Silkradar, Sharepoint, ITG Mercury * Test Partner, Rational Functional Tester, QTP, CPP Unit, Nunit Professional qualification * Executive Program in Global Business Management , IIMC * Master of computer Applications(Honours), Punjab technical university * Bachelors Mathematics, Economics, Kurukshtra University Professional Employment Grapecity Team Lead 9/2010- till date Grapecity is a privately held corporation with its corporate headquarters in Sendai, Japan. My Role (Team Manager) * Team Management * Manage Communication between different scrum teams * Help team in Prioritizing work based on external/ internal dependencies * Create strategy for process improvement * Create Reports on health of project * Inform Management about the health of the project * Create/Update Project plan * Manage training Department * Create tools for Risk Based testing * Create trainings depending on the future requirements * Publish Bi-monthly internal technical...

Words: 598 - Pages: 3

Premium Essay

Assessing Information Technology General Control Risk: an Instructional Case

...Instructional Case Carolyn Strand Norman, Mark D. Payne, and Valaria P. Vendrzyk ABSTRACT: Information Technology General Controls (ITGCs), a fundamental category of internal controls, provide an overall foundation for reliance on any information produced by a system. Since the relation between ITGCs and the information produced by an organization’s various application programs is indirect, understanding how ITGCs interact and affect an auditor’s risk assessment is often challenging for students. This case helps students assess overall ITGC risk within an organization’s information systems. Students identify specific strengths and weaknesses within five ITGC areas, provide a risk assessment for each area, and then evaluate an organization’s overall level of ITGC risk within the context of an integrated audit. Keywords: internal controls; general control; ITGC; risk assessment. INTRODUCTION he Sarbanes-Oxley Act (SOX 2002) and the Public Company Accounting Oversight Board (PCAOB) Auditing Standard No. 5 (PCAOB 2007) require that the organization’s chief executive officer (CEO) and chief financial officer (CFO) include an assessment of the operating effectiveness of their internal control structure over financial reporting when issuing the annual report. External auditors must review management’s internal control assessment as part of an annual integrated audit of an organization’s internal controls over financial reporting. In short, accountants—external auditors, internal auditors, and...

Words: 6299 - Pages: 26

Free Essay

Procurement

...purchasing and supply topics for research proposal Quality Management Quality Management. Search for White Papers and Other Software Related to Quality Management. In today’s global market, providing quality products and services is essential for any manufacturer’s continued growth—but maintaining a competitive edge is not always easy. For success, quality awareness must begin at the conception of the product and continue throughout the various stages of its development. To improve in this area, many manufacturers are now adopting the total quality management (TQM) approach. CASH MANAGEMENT RESEARCH PROPOSAL SAMPLES: Quality Management Quality Management Source: 3i Infotech Document Type: White Paper Description: In today’s global market, providing quality products and services is essential for any manufacturer’s continued growth—but maintaining a competitive edge is not always easy. For success, quality awareness must begin at the conception of the product and continue throughout the various stages of its development. To improve in this area, many manufacturers are now adopting the total quality management  7/3/2007 1:15:00 PM Alfanar HR Management Alfanar IT, an information technology company operating in Saudi Arabia since 1995, introduces the alfanar human resources (HR) Management module for Microsoft Dynamics AX. This module enables the HR department staff, without any programming capability, to identify, capture, maintain, and adjust employee information required...

Words: 1692 - Pages: 7

Premium Essay

Software Quality Assurance

...Introduction………………………………………………………..…..1-2 1.1 Software Quality…………………………………………..……..2 1.2 Software Quality Assurance……………………………..……….2 1.3 Software Testing………………………………………..………2-3 2. Software Quality Assurance Tools………………………………..…….3-7 3. Selected QA Tools…………………………………………………………8 3.1 Selenium IDE…………………………………………………..9-14 3.2 FabaSoft………………………………………………………15-19 4. Future and Conclusion……………………………………………………20   1. Introduction Software Quality Assurance (SQA) Tools play a major role in common software user community and in the field of software development. SQA tools are the specially developed software tools for the purpose of assisting in the QA processes. 1.1 Software Quality The quality of software is assessed by a number of variables. These variables can be divided into external and internal quality criteria. External quality is what the user experiences when running the software in its operational mode. Internal quality refers to the aspects that are code-dependent, and are not visible to the end-user. External quality is critical to the user, while internal quality is meaningful to the developer only. When the quality comes to software quality conformance, requirement consider as software functional quality and fitness for use named as software structural quality. 1.2 Software Quality Assurance Software quality assurance (SQA) consists of a means of monitoring the software engineering process and methods used to ensure quality. The methods by which this are accomplished...

Words: 2186 - Pages: 9

Premium Essay

Sgfj

...SOFTWARE REQUIREMENT SPECIFICATION A Software Requirements Specification (SRS) - a requirements specification for a software system - is a complete description of the behavior of a system to be developed. It includes a set of use cases that describe all the interactions the users will have with the software. Use cases are also known as functional requirements. In addition to use cases, the SRS also contains non-functional (or supplementary) requirements. Non-functional requirements are requirements which impose constraints on the design or implementation (such as performance engineering requirements, quality standards, or design constraints). Railway reservation system 1. INTRODUCTION: 1.1. PURPOSE:The purpose of this source is to describe the railway reservation system which provides the train timing details, reservation, billing and cancellation on various types of reservation namely, • Confirm Reservation for confirm Seat. • Reservation against Cancellation. • Waiting list Reservation. • Online Reservation. • Tatkal Reservation. 1.2 DEFINITIONS, ACRONYMS AND ABBREVIATIONS • NTES – National Train Enquiry System • IVRS – Interactive Voice Response system • PRS – passenger reservation system 1.3. SCOPE • Freight Revenue enhancement. • Passenger Revenue enhancement. • Improved & optimized service 1.4 REFERNCES www.scribd.com 2.OVERALL DESCRIPTION: 2.1.PRODUCT PERSPECTIVE: It enables us to maintain the railway train details like their timings, number of seat available and...

Words: 1214 - Pages: 5

Premium Essay

Swat Analysis of Software Company

...A SWOT Analysis view of the software development industry Georgios Kormaris Department of Information and Computing Sciences, Utrecht University, Utrecht, The Netherlands gkormari@cs.uu.nl WWW home page: http://www.cs.uu.nl/ Introduction I n the past twenty to thirty years many changes and developments have taken place in the software industry which started off during the 1960s mainly in the United States of America and experienced a revolutionary boom since the 1980s, Steinmueller, (1995). There are many different ways and methods of developing software and planning the strategy of a software development company, as we can derive from many recent research projects. Most of these projects are usually concerned with the way that software is developed and not with the way that the strategy of the company as a whole is planned, Cusumano, MacCormack, Kemerer, & Crandall, (2003). Another important factor is which techniques and methods are used to analyze company’s environment and how the strategy is formulated and implemented. In this paper we analyze a popular method for strategic planning which has been mostly used for product portfolio planning and strategic planning on an abstract level, as stated in a research paper by Houben, Lenie, & Vanhoof, (1999). We will focus our interest in the software industry and base our research on the case study of the Austrian software industry as it is presented by Bernroider, (2002). Additionally, certain guidelines are...

Words: 4799 - Pages: 20

Premium Essay

Information System Controls for Systems Reliability

...cannot deny having signed a document.. A digital certificate is an electronic document that is digitally signed by a trusted third party that certifies the identity of the owner of a pair of public and private keys. The PKI is a system that is used to process and manage the public and private keys used in digital signatures and digital certificates. An organization that handles digital certificates is called a certificate authority. 2. The effectiveness of control procedures depends on how well employees understand and follow the organization’s security policies. If all employees are taught proper security measures and taught to follow safe computing practices, such as never opening unsolicited email attachments, using only approved software, not sharing or revealing passwords, and taking steps to...

Words: 5091 - Pages: 21