Coordinating Requirements Engineering and Software Testing

Total Page:16

File Type:pdf, Size:1020Kb

Coordinating Requirements Engineering and Software Testing ENGINEERING AND SOFTWARE TESTING ENGINEERING AND SOFTWARE REQUIREMENTS COORDINATING ABSTRACT The development of large, software-intensive sys- This thesis contains four main contributions: (1) tems is a complex undertaking that is generally An in-depth study on REST alignment challeng- tackled by a divide and conquer strategy. Organi- es and practices encountered in industry. (2) A COORDINATING REQUIREMENTS zations face thereby the challenge of coordinating conceptual framework in the form of a taxonomy ENGINEERING AND SOFTWARE TESTING the resources which enable the individual aspects providing constructs that further our understan- of software development, commonly solved by ding of REST alignment. The taxonomy is ope- adopting a particular process model. The alignme- rationalized in an assessment framework, REST- nt between requirements engineering (RE) and bench (3), that was designed to be lightweight software testing (ST) activities is of particular in- and can be applied as a postmortem in closing terest as those two aspects are intrinsically con- development projects. (4) An extensive investi- nected: requirements are an expression of user/ gation into the potential of information retrieval customer needs while testing increases the likeli- techniques to improve test coverage, a common hood that those needs are actually satisfied. REST alignment challenge, resulting in a solution The work in this thesis is driven by empirical pro- prototype, risk-based testing supported by topic Michael Unterkalmsteiner blem identification, analysis and solution develop- models (RiTTM). ment towards two main objectives. The first is to REST-bench has been validated in five cases and develop an understanding of RE and ST alignme- has shown to be efficient and effective in identi- nt challenges and characteristics. Building this fying improvement opportunities in the coordi- foundation is a necessary step that facilitates the nation of RE and ST. Most of the concepts opera- second objective, the development of solutions tionalized from the REST taxonomy were found relevant and scalable to industry practice that im- to be useful, validating the conceptual framework. prove REST alignment. RiTTM, on the other hand, was validated in a The research methods employed to work single case experiment where it has shown great towards these objectives are primarily empirical. potential, in particular by identifying test cases Case study research is used to elicit data from that were originally overlooked by expert test practitioners while technical action research and engineers, improving effectively test coverage. field experiments are conducted to validate the developed solutions in practice. Michael Unterkalmsteiner Blekinge Institute of Technology Doctoral Dissertation Series No. 2015:08 2015:08 ISSN 1653-2090 2015:08 ISBN: 978-91-7295-306-2 Department of Software Engineering Coordinating Requirements Engineering and Software Testing Michael Unterkalmsteiner BlekingeBlekinge InstituteInstitute ofof TechnologyTechnology Doctoraldoctoral disseDissertationrtation seriesSeries NNoo 2014:03 2015:08 Coordinating Requirements Psychosocial,Engineering and Socio-Demographic Software Testing and Health Determinants in Information Communication Technology Use of Older-Adult Michael Unterkalmsteiner Jessica Berner Doctoral Dissertation in Software Engineering Doctoral Dissertation in Applied Health Technology DepartmentDepartment of Software of Health Engineering BlekingeBlekinge InstituteInstitute of TTechnologyechnology SWEDEN 2015 Michael Unterkalmsteiner Department of Software Engineering Publisher: Blekinge Institute of Technology SE-371 79 Karlskrona, Sweden Printed by Lenanders Grafiska, Kalmar, 2015 ISBN: 978-91-7295-306-2 ISSN: 1653-2090 To my parents. There is not a discovery in science, however revolutionary, however sparkling with insight, that does not arise out of what went before. Adding a Dimension (1966) Isaac Asimov ABSTRACT The development of large, software-intensive systems is a complex under- taking that is generally tackled by a divide and conquer strategy. Organi- zations face thereby the challenge of coordinating the resources which en- able the individual aspects of software development, commonly solved by adopting a particular process model. The alignment between requirements engineering (RE) and software testing (ST) activities is of particular inter- est as those two aspects are intrinsically connected: requirements are an expression of user/customer needs while testing increases the likelihood that those needs are actually satisfied. The work in this thesis is driven by empirical problem identification, analysis and solution development towards two main objectives. The first is to develop an understanding of RE and ST alignment challenges and characteristics. Building this foundation is a necessary step that facilitates the second objective, the development of solutions relevant and scalable to industry practice that improve REST alignment. The research methods employed to work towards these objectives are primarily empirical. Case study research is used to elicit data from practi- tioners while technical action research and field experiments are conducted to validate the developed solutions in practice. This thesis contains four main contributions: (1) An in-depth study on REST alignment challenges and practices encountered in industry. (2)A conceptual framework in the form of a taxonomy providing constructs that further our understanding of REST alignment. The taxonomy is op- erationalized in an assessment framework, REST-bench (3), that was de- signed to be lightweight and can be applied as a postmortem in closing development projects. (4) An extensive investigation into the potential of information retrieval techniques to improve test coverage, a common REST alignment challenge, resulting in a solution prototype, risk-based testing supported by topic models (RiTTM). REST-bench has been validated in five cases and has shown to be ef- ficient and effective in identifying improvement opportunities in the co- ordination of RE and ST. Most of the concepts operationalized from the REST taxonomy were found to be useful, validating the conceptual frame- work. RiTTM, on the other hand, was validated in a single case experiment where it has shown great potential, in particular by identifying test cases that were originally overlooked by expert test engineers, improving effec- tively test coverage. vii ACKNOWLEDGMENTS I have started and finished this thesis alone, however met a bunch of people along the way (or left them). This section is dedicated to them. There is little in this work that has not been directly or indirectly influ- enced by my two supervisors, Tony Gorschek and Robert Feldt. Tony has found the right words, at the right time, when I needed an impulse (in any direction). This makes him a great motivator and mentor. Robert’s feed- back, be it in written communication or in lively discussions, has always been to the point, insightful and constructive. This makes him a great peer and inspirer. SERL Sweden provided a supportive work environment, forming a group that is diverse and at the same time focused on high quality re- search. I would like to thank Mikael for the work related discussions, but even more so for the nerd-talk that lightened up my day. Nauman and Bog- dan have always been excellent colleagues that, besides being supportive, made my stay at the office a little less about work and a little more about life. This is actually true for all colleagues at SERL Sweden. Furthermore, I would like to thank all my co-authors. This research would not have been possible without the support from the companies that provided their time and effort. I would like to thank Louise, Antonios and Johan for their collaboration and patience in trying out my ideas. My appreciation goes to the engineers whose brains I could pick. I value nothing higher than the support I received from my parents, my sister, brother and my grandmas, not only during the last five years but in all the ups and downs before, being physically close or far away from them. You’re all in my thoughts, very often. My wife, Rocio, is the haven I return to after a day at the job. Nothing I have accomplished would have been possible without her support and tolerance for my endeavor. Karlskrona, May 1, 2015 ix PREFACE papers in this thesis This compilation thesis includes the following six papers1. Chapter 2: Elizabeth Bjarnason, Per Runeson, Markus Borg, Michael Unterkalmsteiner, Emelie Engström, Björn Regnell, Giedre Sabali- auskaite, Annabella Loconsole, Tony Gorschek, and Robert Feldt, “Challenges and Practices in Aligning Requirements with Verifica- tion and Validation: A Case Study of Six Companies,” Empirical Software Engineering, vol. 19, no. 6, pp. 1809–1855, 2014. Chapter 3: Michael Unterkalmsteiner, Robert Feldt, and Tony Gorschek, “A Taxonomy for Requirements Engineering and Software Test Align- ment,” ACM Transactions on Software Engineering and Methodol- ogy, vol. 23, no. 2, 2014. Chapter 4: Michael Unterkalmsteiner, Tony Gorschek, Robert Feldt, and Eriks Klotins, “Assessing Requirements Engineering and Software Test Alignment with REST-bench – Five Case Studies,” Journal of Systems and Software, Under Review, 2015. Chapter 5: Elizabeth Bjarnason, Michael Unterkalmsteiner, Emelie En- gström, and Markus Borg, “An Industrial Case Study on the Use of Test Cases as Requirements,” in Proceedings of the 16th Interna- tional Conference on Agile Software Development,
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]
  • Integration Testing of Object-Oriented Software
    POLITECNICO DI MILANO DOTTORATO DI RICERCA IN INGEGNERIA INFORMATICA E AUTOMATICA Integration Testing of Object-Oriented Software Ph.D. Thesis of: Alessandro Orso Advisor: Prof. Mauro Pezze` Tutor: Prof. Carlo Ghezzi Supervisor of the Ph.D. Program: Prof. Carlo Ghezzi XI ciclo To my family Acknowledgments Finding the right words and the right way for expressing acknowledgments is a diffi- cult task. I hope the following will not sound as a set of ritual formulas, since I mean every single word. First of all I wish to thank professor Mauro Pezze` , for his guidance, his support, and his patience during my work. I know that “taking care” of me has been a hard work, but he only has himself to blame for my starting a Ph.D. program. A very special thank to Professor Carlo Ghezzi for his teachings, for his willingness to help me, and for allowing me to restlessly “steal” books and journals from his office. Now, I can bring them back (at least the one I remember...) Then, I wish to thank my family. I owe them a lot (and even if I don't show this very often; I know this very well). All my love goes to them. Special thanks are due to all my long time and not-so-long time friends. They are (stricty in alphabetical order): Alessandro “Pari” Parimbelli, Ambrogio “Bobo” Usuelli, Andrea “Maken” Machini, Antonio “the Awesome” Carzaniga, Dario “Pitone” Galbiati, Federico “Fede” Clonfero, Flavio “Spadone” Spada, Gianpaolo “the Red One” Cugola, Giovanni “Negroni” Denaro, Giovanni “Muscle Man” Vigna, Lorenzo “the Diver” Riva, Matteo “Prada” Pradella, Mattia “il Monga” Monga, Niels “l’e´ semper chi” Kierkegaard, Pierluigi “San Peter” Sanpietro, Sergio “Que viva Mex- ico” Silva.
    [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]
  • Empirical Evaluation of the Effectiveness and Reliability of Software Testing Adequacy Criteria and Reference Test Systems
    Empirical Evaluation of the Effectiveness and Reliability of Software Testing Adequacy Criteria and Reference Test Systems Mark Jason Hadley PhD University of York Department of Computer Science September 2013 2 Abstract This PhD Thesis reports the results of experiments conducted to investigate the effectiveness and reliability of ‘adequacy criteria’ - criteria used by testers to determine when to stop testing. The research reported here is concerned with the empirical determination of the effectiveness and reliability of both tests sets that satisfy major general structural code coverage criteria and test sets crafted by experts for testing specific applications. We use automated test data generation and subset extraction techniques to generate multiple tests sets satisfying widely used coverage criteria (statement, branch and MC/DC coverage). The results show that confidence in the reliability of such criteria is misplaced. We also consider the fault-finding capabilities of three test suites created by the international community to serve to assure implementations of the Data Encryption Standard (a block cipher). We do this by means of mutation analysis. The results show that not all sets are mutation adequate but the test suites are generally highly effective. The block cipher implementations are also seen to be highly ‘testable’ (i.e. they do not mask faults). 3 Contents Abstract ............................................................................................................................ 3 Table of Tables ...............................................................................................................
    [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]
  • 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].
    [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]