Fault-Based Analysis: How History Can Help Improve Performance and Dependability Requirements for High Assurance Systems

Total Page:16

File Type:pdf, Size:1020Kb

Fault-Based Analysis: How History Can Help Improve Performance and Dependability Requirements for High Assurance Systems Fault-Based Analysis: How History Can Help Improve Performance and Dependability Requirements for High Assurance Systems Jane Huffman Hayes David M. Pruett Elizabeth Ashlee Holbrook Geocontrol Systems Inies Raphael C.M. Incorporated University of Kentucky Dept. of Computer Science [email protected] [email protected], {ashlee|irchem2}@uky.edu Abstract Related work is discussed in Section 3. Our position is outlined in Section 4 as well as some Performance and dependability requirements are preliminary results. Finally, conclusions and future key to the development of high assurance systems. work round out the paper in Section 5. Fault-based analysis has proven to be a useful tool for detecting and preventing requirement faults 2. Fault-based analysis early in the software life cycle. By tailoring a generic fault taxonomy, one is able to better “The IEEE standard definition of an error is a prevent past mistakes and develop requirements mistake made by a developer. An error may lead to specifications with fewer overall faults. Fewer one or more faults [13]. To understand Fault- faults within the software specification, with Based Analysis (FBA), a look at a related respect to performance and dependability technique, Fault-Based Testing (FBT), is in order. requirements, will result in high assurance systems Fault-based testing generates test data to of improved quality. demonstrate the absence of a set of pre-specified faults. There are numerous FBT techniques. These 1. Introduction use a list of potential faults to generate test cases, generally for unit- and integration-level testing One needs only look to the increasing [20,3]. Research has been performed in the area of importance of computer systems in our society and software safety fault identification [20, 6], the increasingly trusted roles that they play to including research into numerous fault analysis understand how important it is to ensure that high techniques such as Petri-net safety analysis [16,17], assurance systems are correctly built. For example, Failure Mode, Effects, Criticality Analysis power generation has largely become digital (FMECA) [19], and criticality analysis [29].” [10] (instrumentation and control systems for nuclear Similar to FBT, FBA identifies static techniques, power plants are becoming increasingly digital) as such as traceability analysis, and specific activities well as aviation (autopilot and other important within those techniques that should be performed to systems of large, commercial aircraft are now ensure that a set of pre-specified faults do not exist. digital). Clearly we need these software systems to Fault-based analysis is risk-driven, and attempts to be dependable. Performance also plays an select V&V techniques to apply in order to best important role in many software systems (many achieve a project’s goals. In performing FBA, one functions are time critical). targets the strongest fault class or classes [12]. A In order to ensure that high assurance software more extensive survey of related work, such as systems possess the necessary performance and orthogonal defect classification [4] can be found in dependability qualities, it is essential that their [8]. requirements are specified correctly. Though Fault-based analysis, as applied to requirement performance and dependability are non-functional faults, can help prevent and/or detect faults early in requirements, they are still requirements and hence the software lifecycle, resulting in significant cost can potentially be improved using methods and savings [1]. In earlier work by Hayes [8], a generic techniques that have been proven to have general fault taxonomy was selected as the basis for applicability to the requirements domain. In this requirements FBA, requirements faults were paper, we argue that a process called fault-based examined, and a method for extending a taxonomy analysis can be applied to performance and was developed and implemented. Historical data dependability requirements for high assurance can be used to determine the fault types that are systems. most likely to be introduced and risk analysis can The paper is organized as follows. Section 2 presents an overview of fault-based analysis. NASA project Generic fault requirements taxonomy faults/problem reports Class-project to extend a fault taxonomy for a software project class Class A fault Class B fault Class C fault Class D fault taxonomy taxonomy (e.g., taxonomy (e.g., taxonomy (e.g., (e.g., Other projects Manned Exploration Aerospace, Earth Biological/Physical which do not fall into Manned Missions) Science, Space projects) Class A, B, or C) Science projects) Project-process to extend a taxonomy for a project CI and problem Fault taxonomy report for a specific information project CI-process to identify fault distribution across subsystems -- Data Fault distribution -- Process Figure 1: High level process for extending fault taxonomies. be performed to determine the fault types that release), one looks at the historical trends of would be most devastating if overlooked. requirements defect reports from the previous We can identify techniques that help reduce the releases. If beginning development of a new risk of, prevent, and detect prevalent or targeted product, one may look at the historical trends from fault types. These techniques are then applied as that organization on earlier products or from related part of the V&V (Verification and Validation) organizations (with personnel overlap, such as and/or IV&V (Independent Verification and management). Validation)effort [8]. To provide a requirements- based fault analysis approach, an overall 3. Tailoring of fault-based analysis methodology was defined [5]: (i) build a requirement fault taxonomy and a process for Our position is that FBA can be applied to tailoring it; (ii) build a taxonomy of V&V improve dependability and performance techniques and build a matrix of their validated requirements. Improved performance and fault detection capabilities; and (iii) develop dependability requirements will result in high guidance to V&V agents and software projects for assurance systems of improved quality. The US use of the fault-based analysis methodology and spends approximately $59.5 billion each year on assist in its adoption. Just as project quality software errors, according to a 2002 Study by the improves when one prioritizes requirements [7], National Institute of Standards (NIST). Lack of quality increases when a mechanism is in place to software requirements as well as incorrect prioritize fault countermeasures and choose the requirements contributes heavily to this problem most effective fault detection and prevention [15]. methods. We base our position on prior work with FBA, Note that we require defect reports related to as applied on various computer software requirements. This is the starting point for the capabilities of the International Space Station [14], FBA process. If starting a new release for an a manned flight system and thus high assurance existing system (writing requirements for the new [11]. In developing FBA, we developed a process that to collections of related projects, or domains. can be tailored or applied to: various levels of the Given defect information for a collection of software architecture, to historical “slices” of time, projects, the FBA process is applied (as discussed etc. Let us examine a few examples of such in Section 2) and the result is a tailored taxonomy “tailoring.” FBA can be applied at a generic level Table 1: Configuration item (CI) process for tailoring a taxonomy. Entry Criteria Activities Exit Criteria 1. All inputs are available 1. Select project-specific requirement fault 1. A CI-specific requirement 2. NASA has authorized taxonomy fault taxonomy has been use of project data 2. Select a CI from the list of project CIs developed 3. NASA has authorized 3. Categorize the fault for the CI according to the the taxonomy extension project-specific fault taxonomy project 4. Determine the frequency of faults for the CI 5. Identify the crucial fault categories for the CI 6. Repeat Steps 2 through 5 for all other CIs Inputs Process Controls/Metrics Outputs 1. Project-specific fault Process Controls: 1. Frequency counts of faults taxonomy 1. Maintenance of configuration control of 2. Crucial fault categories for 2. Requirement taxonomy the CI faults/problem reports 2. Maintenance and management of NASA CI 3. Prioritized fault list for the for the CIs data by project CI 3. CI-specific information Metrics: (goals priorities for all 1. Person hours for effort CIs 2. Number of CIs 3. Number of faults 4. Historic probability of occurrence 5. Fault exposure values (fault frequency occurrence) that helps to categorization percentage data for the International characterize the domain as a whole. For example, Space Station as a whole. By examining available we examined the fault profiles for a number of high data and performing trend analysis, we are able to assurance NASA systems, applied the FBA tailor taxonomy to prioritize the particular fault process, and created a tailored fault taxonomy for areas that have been historically significant. Table NASA Class A systems (NASA’s term for high 3 shows our tailored taxonomy for the particular assurance systems) [11]. Next, we wanted to apply configuration items we have examined [8]. FBA to a specific project. We took the Class A Once we have obtained the historical fault taxonomy, project specific information, and applied profile, we meet with engineers
Recommended publications
  • Geo-DB Requirement Analysis
    2.1.1. Overview Lifecycle 2 Conceptual Database Design 2.1 Requirement analysis -> Text 2.2 Modeling languages Requirement analysis -> Conceptual Model 2.1.1 Overview Conceptual Design 2.1.2 Requirement Analysis (case study) 2.2.1 Basic Modeling Primitives 2.2.2 Modeling Languages: UML and CREATE TABLE Studentin (SID INTEGER PRIMARY KEY, -> Database schema VName CHAR(20) Name CHAR(30)CREATE NOT TABLENULL, Kurs Entity-Relationship Model (ERM) Logical Schema Design Email Char(40));(KID CHAR(10) PRIMARY KEY, Name CHAR(40) NOT NULL, Dauer INTEGER); CREATE TABLE Order 2.2.3 Conceptual DB design: basics ODate DATE soldBy INTEGER FOREIGN KEY REFEREBCES Peronal(PID) 2.2.4 From Requirements to Models CID INTEGER FOREIGN KEY REFERENCES Customer (CID)); Physical Schema Design -> Access paths References: Kemper / Eickler chap 2, Elmasri / Navathe chap. 3 Administration Garcia-Molina / Ullmann / Widom: chap. 2 © HS-2009 Redesign 02-DBS-Conceptual-2 Database Design:Terminology 2.1.2 Requirement Analysis Most important: talk with your customers! Def.: Database Design The process of defining the overall structure of a database, Tasks during RA: i.e. the schema, on different layers of abstraction. Identify essential "real world" information (e.g. Design levels: Conceptual, logical, physical interviews) Remove redundant, unimportant details Includes "Analysis" and "Design" from SE Clarify unclear natural language statements DB Modeling: defining the "static model" using formal or visual languages Fill remaining gaps in discussions Distinguish data and operations DB SE Requirements Requirements Conceptual modeling Analysis Requirement analysis & Conceptual Design aims at Logical modeling Design focusing thoughts and discussions ! Physical modeling Implementation © HS-2009 02-DBS-Conceptual-3 © HS-2009 02-DBS-Conceptual-4 Example: Geo-DB Requirement Analysis The database we develop will contain data about countries, cities, Clarify unclear statements organizations and geographical facts.
    [Show full text]
  • Design and Implementation of a Standards Based Ecommerce Solution in the Business-To-Business Area
    Design and implementation of a standards based eCommerce solution in the business-to-business area Thesis of Andreas Junghans Department of Computer Science Karlsruhe University of Applied Sciences, Germany Written at ISB GmbH, Karlstrasse 52-54, 76133 Karlsruhe 03/01/2000 to 08/31/2000 Supervisor at Karlsruhe University of Applied Sciences: Prof. Klaus Gremminger Co-supervisor: Prof. Dr. Lothar Gmeiner Supervisor at ISB GmbH: Dipl.Inform. Ralph Krause Declaration I have written this thesis independently, solely based on the literature and tools mentioned in the chapters and the appendix. This document - in the current or a similar form - has not and will not be submitted to any other institution apart from the Karlsruhe University of Applied Sciences to receive an academical grade. I would like to thank Ralph Krause and Gerlinde Wiest of ISB GmbH for their support over the last six month, as well as Peter Heil and Frank Nielsen of Heidelberger Druckmaschinen AG for providing informa- tion and suggestions for the requirements analysis. Acknowledgements also go to Christian Schenk for his MiKTEX distribution and the Apache group for their XML tools. Finally, I would like to thank Professor Klaus Gremminger of the Karlsruhe University of Applied Sciences for his supervision of this thesis. Karlsruhe, 3rd of September, 2000 (Andreas Junghans) Contents 1 Introduction 1 1.1 Document conventions ...................................... 1 1.2 Subject of this thesis ....................................... 1 1.3 Rough schedule .......................................... 2 2 Requirements analysis 3 2.1 Tools used ............................................. 3 2.2 Domain requirements ....................................... 3 2.2.1 Clarification of terms ................................... 3 2.2.2 Specific requirements on ”Business to Business” applications ............
    [Show full text]
  • Requirements Phase
    Requirements Phase • Chance of a product being on time and within budget is very slim unless the development team knows what the product should do • To achieve this level the development team must analyze the needs of the client as precisely as possible Ch10 Copyright © 2004 by Eugean 1 Hacopians Requirements Phase • After a clear picture of the problem the development teams can answer the question: – What should the product do? • The process of answering this question lies within the requirements phase Ch10 Copyright © 2004 by Eugean 2 Hacopians Requirements Phase • Common misconceptions are: – During requirement phase the developer must determine what the client wants – The client can be unclear as to what they want – The client may not be able to communicate what they want to the developer • Most clients do not understand the software development process Ch10 Copyright © 2004 by Eugean 3 Hacopians Requirements Elicitation • This process is finding out a client’s requirements • Members of the requirements team must be familiar with the application domain • Requirement analysis is the process of: – Understanding the initial requirements – Refining requirements – Extending requirements Ch10 Copyright © 2004 by Eugean 4 Hacopians Requirements Elicitation • This process starts with several members of the requirements analysis team meeting with several members of the client’s team • It is essential to use the correct terminology or settle on an agreed set – Misunderstanding terminology can result in a faulty product – This could result in
    [Show full text]
  • Data Quality Requirements Analysis and Modeling December 1992 TDQM-92-03 Richard Y
    Published in the Ninth International Conference of Data Engineering Vienna, Austria, April 1993 Data Quality Requirements Analysis and Modeling December 1992 TDQM-92-03 Richard Y. Wang Henry B. Kon Stuart E. Madnick Total Data Quality Management (TDQM) Research Program Room E53-320 Sloan School of Management Massachusetts Institute of Technology Cambridge, MA 02139 USA 617-253-2656 Fax: 617-253-3321 Acknowledgments: Work reported herein has been supported, in part, by MITís Total Data Quality Management (TDQM) Research Program, MITís International Financial Services Research Center (IFSRC), Fujitsu Personal Systems, Inc. and Bull-HN. The authors wish to thank Gretchen Fisher for helping prepare this manuscript. To Appear in the Ninth International Conference on Data Engineering Vienna, Austria April 1993 Data Quality Requirements Analysis and Modeling Richard Y. Wang Henry B. Kon Stuart E. Madnick Sloan School of Management Massachusetts Institute of Technology Cambridge, Mass 02139 [email protected] ABSTRACT Data engineering is the modeling and structuring of data in its design, development and use. An ultimate goal of data engineering is to put quality data in the hands of users. Specifying and ensuring the quality of data, however, is an area in data engineering that has received little attention. In this paper we: (1) establish a set of premises, terms, and definitions for data quality management, and (2) develop a step-by-step methodology for defining and documenting data quality parameters important to users. These quality parameters are used to determine quality indicators, to be tagged to data items, about the data manufacturing process such as data source, creation time, and collection method.
    [Show full text]
  • Business Requirements Analysis Document (BRAD) - Trading Partner Performance Management, Release 1.0.0
    Business Requirements Analysis Document (BRAD) - Trading Partner Performance Management, Release 1.0.0 Business Requirements Analysis Document (BRAD) For Trading Partner Performance Management BRAD: 1.0.0 BRG: Trading Partner Performance Management Work Group Date: 7-Nov-2008, Approved 7-Nov-2008, Approved All contents copyright © GS1 2008 Page 1 of 81 Business Requirements Analysis Document (BRAD) - Trading Partner Performance Management, Release 1.0.0 Document Summary Document Item Current Value Document Number 10713 Document Title Business Requirements Analysis Document (BRAD) Date Last Modified 7-Nov-2008 Status Approved Work Group / Chairperson Trading Partner Performance Management / Matt Johnson BRAD Template Version 2.4 Change Request Reference Date of CR Submission to GSMP: CR Submitter(s): Refer to Change Request (CR) Number(s): 13 - Jul – 2007 John Ryu, GS1 07-000283 Document Change History Date of Vers Changed By Reason for Summary of CR # Model Change ion Change Change Build # 31–Oct-2007 0.1.0 John Ryu Initial Draft Section 15 07-000283 N/A 3-Mar–2008 0.2.0 John Ryu Added agreed measures Section 15 Not N/A Matt Johnson Applicable 25-Mar-2008 0.2.2 John Ryu Based on Dallas F2F meeting Section 15 N/A N/A 9-Apr-2008 0.3.0 John Ryu Finalizing for GSMP Meeting on 20080414 Section 15 N/A N/A 11-Apr-2008 0.3.1 John Ryu Based on 20080409 teleconference Section 15 N/A N/A Matt Johnson 22-Apr-2008 0.3.2 John Ryu Based on Brussels F2F Meeting Section 15 N/A N/A 1-May-2008 0.3.3 John Ryu Posting for 60 Day Public Review Section 15 N/A N/A Start May 1 and End on June 30.
    [Show full text]
  • Requirements Analysis Software Requirements
    Requirements Analysis Software Requirements AA softwaresoftware (product)(product) requirementrequirementisis aa feature,feature, function,function, capability,capability, oror propertyproperty thatthat aa softwaresoftware productproduct mustmusthave.have. Software Design AAsoftwaresoftware designdesignisis aa specificationspecification ofof aa softwaresoftware systemsystem thatthat programmersprogrammers cancan implementimplement inin code.code. What vs How The traditional way to distinguish requirements from design: What a system is supposed to do is requirements How a system is supposed to do it is design What vs How Problems The what vs. how criterion is probably unworkable: •Other design disciplines do not make this distinction •Understanding needs and constraints must always be the first step in design •The what vs. how criterion does not hold up in practice Requirements vs Design Determining requirements is really the first step of design. RequirementsRequirementsstatestate clientclient needsneeds andand solutionsolution constraints.constraints. DesignsDesignsstatestate problemproblem solutions.solutions. Requirements Phase Activities Problem or requirements analysis Working with clients to understand their needs and the constraints on solutions Requirements Specification Documenting the requirements These activities are logically distinct but usually occur together. Requirements Phase Problems The requirements phase is HARD! There are several reasons for this: • requirements volatility • requirements elicitation problems • language
    [Show full text]
  • Dependability Attributes for Space Computer Systems
    DEPENDABILITY ATTRIBUTES FOR SPACE COMPUTER SYSTEMS Romani, M.A.S., [email protected] Lahoz, C.H.N., [email protected] Institute of Aeronautics and Space (IAE), São José dos Campos, São Paulo, Brazil Yano, E.T., [email protected] Technological Institute of Aeronautics (ITA), São José dos Campos, São Paulo, Brazil Abstract. Computer systems are increasingly used in critical applications in the space area where a failure can have serious consequences such as loss of mission, properties or lives. One way to improve quality of space computer projects is through the use of dependability attributes such as reliability, availability, safety, etc. to assist the identification of non-functional requirements. This work presents and discusses a minimum set of dependability attributes, selected for software applications, to be used in space projects. These attributes resulted from a research carried out on factors extracted from practices, standards and safety models both from international institutions of the aerospace field such as ESA, NASA and MOD (UK Ministry of Defense), as well as renowned authors in the area. An example illustrates the use of dependability attributes to identify dependability requirements. Keywords: dependability, requirements specification, software quality, space systems 1. INTRODUCTION Computer systems are increasingly used in space, whether in launch vehicles, satellites, and ground support and payload systems. Due to this fact, the software applications used in these systems have become more complex, mainly due to the high number of features to be met, thus contributing to a greater probability of hazards occurrence in a project. Pisacane (2005) emphasizes that spacecraft computer systems require space-qualified microcomputers, memories, and interface devices.
    [Show full text]
  • Defining and Managing Requirements: a Framework for Project Success and Beyond Requirements Are Critical As Project Managers Try to Control Project Failure Rates
    RG Perspective Defining and Managing Requirements: A Framework for Project Success and Beyond Requirements Are Critical as Project Managers Try to Control Project Failure Rates 11 Canal Center Plaza Alexandria, VA 22314 HQ 703-548-7006 Fax 703-684-5189 teamRG.com © 2017 Robbins-Gioia, LLC Defining and Managing Requirements Conventional wisdom says you will never reach Get at the true requirements your destination if you don’t know where you’re Enforce tracking and management of going. However, all too often, that’s exactly how requirements throughout the life-cycle projects are implemented, most often as a result Allow for a structured approach to the of the business and technical staff being unable to review and approval process communicate their needs to each other. This Contribute to future projects so that communication gap usually occurs early in a valuable assets are not lost project, and the negative impacts manifest Each of these four critical success factors is themselves throughout the entire life-cycle. discussed next. Extensive re-work, scope creep, missed deadlines, low morale, and required features being dropped Critical Success Factor #1: Eliciting from product releases are just some of the issues the True Requirements that are costly and can be traced back to a The key to uncovering real requirements (and by fundamental lack of understanding of the business that we mean those that meet true needs) is needs. three-fold. You must have an efficient and For the project manager, unclear requirements are effective process to guide the way requirements the cause of mounting frustration throughout the are gathered and documented; your process must life cycle.
    [Show full text]
  • Requirement Analysis Method of E- Commerce Websites Development for Small- Medium Enterprises, Case Study: Indonesia
    International Journal of Software Engineering & Applications (IJSEA), Vol.5, No.2, March 2014 REQUIREMENT ANALYSIS METHOD OF E- COMMERCE WEBSITES DEVELOPMENT FOR SMALL- MEDIUM ENTERPRISES, CASE STUDY: INDONESIA Veronica S. Moertini1, Suhok2, Silvania Heriyanto3 and Criswanto D. Nugroho4 Informatics Department, Parahyangan Catholic University, Indonesia ABSTRACT Along with the growth of the Internet, the trend shows that e-commerce have been growing significantly in the last several years. This means business opportunities for small-medium enterprises (SMEs), which are recognized as the backbone of the economy. SMEs may develop and run small to medium size of particular e-commerce websites as the solution of specific business opportunities. Certainly, the websites should be developed accordingly to support business success. In developing the websites, key elements of e-commerce business model that are necessary to ensure the success should be resolved at the requirement stage of the development. In this paper, we propose an enhancement of requirement analysis method found in literatures such that it includes activities to resolve the key elements. The method has been applied in three case studies based on Indonesia situations and we conclude that it is suitable to be adopted by SMEs. KEYWORDS Software Requirements Analysis, E-Commerce Website Development, Resolving Key Elements of E- Commerce Business Model 1. INTRODUCTION It is well recognized that small-medium enterprises (SMEs) are significant to the worldwide socio-economic development. It is even viewed that SMEs are the backbone of the economy. SMEs have also contributed significantly in higher growth of employment, output, promotion of exports, and fostering entrepreneurship [5, 7].
    [Show full text]
  • Requirements and Design for Dependable Systems
    COURSE DESCRIPTION – ACADEMIC YEAR 2019/2020 Course title Requirements and Design for Dependable Systems Course code 76052 Scientific sector INF/01 Degree Master in Software Engineering for Information Systems (LM-18) Semester 1 Year 1 Credits 6 Modular No Total lecturing hours 40 Total exercise hours 20 Not compulsory. Non-attending students have to contact the lecturer Attendance at the start of the course to agree on the modalities of the independent study. Prerequisites Basic courses in Programming and Software Engineering. Familiarity with UML and software modelling. Course page https://ole.unibz.it/ Specific educational The course belongs to the type caratterizzanti – discipline informatiche objectives and is part of the Foundations in Software Engineering. The course objective is to familiarize students with tools and techniques to acquire and analyze software requirements, and to define and design a software-based system with the focus on dependability as the key concern. Emphasis is given to traceability of requirements to architecture, to justification of design decisions based on collected requirements, to consequences of design decisions for dependable systems. Students will acquire skills and competencies resulting from the conception, negotiation, documentation and maintenance of dependability requirements in a specific domain and environment. Requirements analysis aims at reviewing, assessing, prioritizing, and balancing the requirements by developing technical specifications (functional and non-functional) for building a system that will meet the needs of the stakeholders. The design of dependable software- based systems aims at identifying or building software components that define the characteristics and quality of such a system. The students are exposed to problem-solving techniques that allow the synthesis of software solutions satisfying the requirements of the system.
    [Show full text]
  • A Tutorial for Requirements Analysis
    Project Scope Management Prof. Dr. Daning Hu Department of Informatics University of Zurich Some of the contents are adapted from “System Analysis and Design” by Dennis, Wixom, &Tegarden. Course Review: What do Project Managers Manage? The Triple Constraint of Project Management •Scope &Quality •Time •Cost 2 Course Review: Project Objectives Scope & Quality (fitness for purpose) Budget (to complete it within the budget) Time (to complete it within the given time) It is clear that these objectives are not in harmony! 3 3 Course Review: Requirements Analysis and System Specification Why is it one of first activities in (software) project life cycle? Need to understand what customer wants first! Goal is to understand the customer’s problem. Though customer may not fully understand it! Requirements analysis says: “Make a list of the guidelines we will use to know when the job is done and the customer is satisfied.” Also called requirements gathering or requirements engineering System specification says: “Here’s a description of what the program/system will do (not how) to satisfy the requirements.” Distinguish requirements gathering & system analysis? A top-level exploration into the problem and discovery of whether it can be done and how long it will take. 4 Learning Objectives: Project Scope Management Explain what scope management is and the related processes Discuss methods for collecting and documenting requirements Explain the scope definition process and describe the contents of a Project Scope Statement Discuss the process of constructing a Work Breakdown Structure (WBS) using various approaches Explain the importance of scope verification and control and how to avoid scope problems 5 What is Project Scope Management? Scope refers to all the work involved in creating the products of the project and the processes used to create them.
    [Show full text]
  • Computer Science CSC 235 System Requirements and Testing Credits and Contact Hours: 3 Credits, Contact Hours: 42 (1 Contact Hour = 50 Minutes) Instructor: Dr
    Computer Science CSC 235 System Requirements and Testing Credits and Contact Hours: 3 Credits, Contact Hours: 42 (1 contact hour = 50 minutes) Instructor: Dr. Vinitha Hannah Subburaj Textbook: 1. Mastering the Requirement Process: Getting Requirements Right, Robertson, S. and Robertson, J., 3rd Edition, Addison-Wesley Professional, 2012. 2. System Analysis and Design, Alan Dennis; Barbara Haley Wixom; Roberta M. Roth, 5th Edition, John Wiley & Sons, 2012 3. The Art of Software Testing, Glenford J. Myers; Corey Sandler; Tom Badgett, 3rd Edition, John Wiley & Sons, 2011 4. Software Testing: Concepts and Operations, Ali Mili; Fairouz Tchier, John Wiley & Sons, 2015 Course description: a. Catalog description: This course focuses on theoretical and practical aspects of system requirements gathering and testing. Students will be introduced to the fundamental concepts in system requirements gathering and testing process. The requirements gathering process includes techniques for eliciting requirements, analyzing, writing, and validating requirement for software systems. Testing process includes introduction to different types of testing models and testing techniques. Testing process also includes analyzing, and developing different components of a test plan using a specific standard. This course will be a combination of traditional lectures and in class activities that emphasize on real world requirements gathering and testing practices. b. Prerequisites: CSC 160 c. Required/Elective: a. Computer Science – Required b. Software Engineering – Required Specific Goals of Course: a. Specific outcomes of instruction After completing this course successfully students should be able to: i. Describe the role of requirements analysis in software development life cycle ii. Elicit requirements using a variety of techniques iii. Represent functional and non-functional requirements for different types of systems using formal and informal techniques iv.
    [Show full text]