A Comparative Study of Software Development Life Cycle Models

Total Page:16

File Type:pdf, Size:1020Kb

A Comparative Study of Software Development Life Cycle Models A Comparative Study of Software Development Life Cycle Models Jimeet Shah Department of Computer Science and Engineering Institute of Technology, Nirma University [email protected] Abstract— A Software Development Life-Cycle (SDLC), also funding is limited, even a little mishandling or poor selection known as Software Process is an armature imposed upon the of software models can lead to more exploitation of resources development of a software product [1]. The deciding factor for and time, which won’t be favorable. the survival of a specific ”Software Development Model” in the Software Organisation as well as in the market is the Software A Software Development Life Cycle can be defined as Process. It may not be necessary that the set of steps/activities or a simplified structure laid down for developing a software in simple words, processes utilized by a software organization that product. In order to select, implement and in later stages, has proven to be efficient and effective, would be applicable for monitor the life cycle of a software i.e. based on the method another software organization. Other software organizations may chosen; an ISO standard ”ISO 12207” is used for description opt for another set of processes, proving to be more convenient to them. [4]. For a given Software Development Process, the activities Software Process Model is used, to provide the basic structure, can be categorized as follows [1]: resulting in the creation of a plan from one stage to another. 1) Understanding the case The significance of this plan is to provide a directive for 2) Decide a scheme for the solution planning, organizing and finally, executing the software product successfully. 3) Coding for the designed solution In this paper, we have carried out a comparative analysis of 4) Testing the definite program the various traditional as well as modern software development Since the above-mentioned activities are found to be much models available like Waterfall, V-shaped, Iterative, Incremental, Evolutionary Prototyping, Spiral, Rapid Application Develop- more complex in nature, they can be broken down into further ment(RAD) and also Agile models. As per SDLC, the perfor- sub-activities too. These sub-steps are created to increase the mance of every mentioned model is calculated, based on their functionality and effectiveness of the software product. The advantages and the disadvantages are taken into consideration. basic activities can be written as: Index Terms—Software Development Life Cycle, waterfall, v- shaped, iterative, incremental, prototyping, spiral, RAD, agile 1) Requirement analysis 2) Design I. INTRODUCTION 3) Coding In this forthcoming era, the newly emerging information 4) Testing technologies have led to a sudden surge in the usage of the 5) Maintenance software. The impact of such development has resulted in software being an essential division of the Modern Human Civilization. In simple words, an entity depends immensely on the software due to the development of Information Tech- nology. Some of the major objectives of creating a software include: increasing the efficiency as well as the accuracy of the complex process that we are addressing. Also, the easier and faster execution of each step present in the life cycle of the respective software is a must. Here, we are introduced to the term ”Software Development” [2]. Huge projects involving Software Development as one of the key ingredients, require an enormous amount of time and money to be invested, that had to be utilized in such a manner, Fig. 1. SDLC Phases that the final product is deliverable with the least-cost possible. With a no. of different approaches available for presenting the II. WATERFALL MODEL software product, the main aim remains to be of abating cost The waterfall model was the first SDLC model to be and time, without compromising the quality of the finished introduced in Software Engineering. The first description of product [3]. By taking the worst-case/crisis possible where the model was done in 1970 in an article by Winston W. Royce [5]. Although the term “waterfall” was never referred 6) Maintenance: in it. The first use of the “Waterfall” was possibly done by This phase involves alteration of system or a component Bell and Thayer [6]. of the system to remove bugs generated during live The model is commonly referred to as a linear sequential usage, to improve performance of the system, or due model. It breaks the project into linear phases. Each phase to change requests by the customer. depends on the output of the preceding phase. The outcome of Advantages each stage is known as deliverable. The phases are independent and do not overlap. Therefore the next phase cannot begin 1) Simple and easy to understand before the previous phase ends. In this way, the process flows 2) Works very well for smaller projects in one direction, like a waterfall, hence the name “waterfall”. 3) Well defined stages 4) Heavily documented 5) Milestones are easily identifiable Disadvantages 1) Real-world projects are seldom sequential 2) Working software produced only in the later stage of the life cycle 3) New requirements cannot be accommodated at a later stage 4) Turn out to be a poor model for long, complex and object-oriented projects III. V-SHAPED MODEL The V-Shaped Model is annexation made to the classical Waterfall Model. It is coined as the ”Verification and Valida- tion Model”. In comparison to the classical Waterfall model, the structure of this model isn’t linear, i.e. the process is worked out in the form of a branch. As shown in figure 2, it is quite visible that, the process steps are inclining upwards, after the coding stage, to form the V-Shape. Within this model, the relationship between the develop- Fig. 2. Phases of Waterfall model mental life cycle phase and its testing phase in terms of ”Test 1) Requirement Analysis: Plan” is found. By moving in the horizontal direction (left to The primary purpose of this phase is to comprehend the right), the progress with respect to time is observed; while in precise requirements of the client/customer and record a vertical direction, the level of abstraction could be obtained. them in a document that describes the system elabo- 1) Requirements: rately. The output of this phase is a document known as Business requirements, as well as system requirements, a Software Requirement Specification (SRS) document. are worked upon similarly as that in the Waterfall 2) System Design: Model. Also, in this model, before getting started with The objective of this phase is to convert the specified re- the development phase, a ”system test” plan is created quirements into an architecture that can be implemented. which is focused solely on achieving the functionality The complete architecture is designed along with the as mentioned in the requirements. hardware and system requirements or specifications. 2) High-Level Designing: 3) Implementation: Being focused on the system’s structure and design After the system design, the system is developed into helps us in providing the outline of the service, system, small individual units. Each of these units is designed platform, product, and solution. Also, to examine the and tested independently. components of the software systems and their ability to 4) Testing: work together, an Integrated Test Plan is created. After the units of the system are developed, they are 3) Low-Level Designing: integrated into one unit which is tested for bugs and It is the phase where the definition of literal logic for vulnerabilities. This phase is very essential as this de- each portion of the system exists. Also, the design of the termines whether the software will be released into the actual components of software is done. For example, in market or needs to be debugged. this phase, all the possible relations between the classes 5) Deployment: and the methods represented through Class Diagrams Once the testing is done, the product is released into the are present. As a result, the Component testing plan is market or deployed at the client end. created. 4) Implementation: each module goes through all phases of software development, This phase deals with all the coding parts. Once, the namely, requirements, design. implementation, and testing. process of coding is completed, the execution path The requirements of the product are broken down into moves toward the right side of the V(in an upward components that can be developed incrementally. The planning direction) where all the test plans are present. Since these is done for only the next increment and no long term plans are test plans were developed earlier, they are brought into made. This makes it easier to modify the product as per needs. effect now. The first task that is undertaken is the development of core 5) Coding: features. The product with basic core features is released. Then It is the bottom-most part of the model. Here, the new functions are added into the next increments and versions code for the given Module Design is developed by the of products are released. Each version has more additional developers. Later on, Unit testing is performed on the features than the preceding function. The process is carried code written by developer [7]. out until the final product is delivered to the client. Fig. 3. V-Shaped Model Fig. 4. Incremental model Advantages The incremental model is usually adopted when: 1) Higher chances of the model being successful compared to the Waterfall model because test plans are developed 1) There is a demand for quick release of the product in the early stages of the life cycle 2) Requirements are well defined 2) Feasible and straightforward in terms of usage 3) Projects have new technologies 3) Each phase will always have a result 4) The project involves high risk 4) Suitable for small scale projects 5) The software engineering team is not very well trained 5) Maintenance is optimum or skilled 6) Resource and capital control is higher Advantages Disadvantages 1) Working product will be ready quickly 1) Incorporation of changes after certain phases becomes 2) Flexible in nature difficult 3) Easy testing and debugging 2) Development is done during the implementation phase, 4) Risk management is simpler i.e.
Recommended publications
  • Powerdesigner 16.6 Data Modeling
    SAP® PowerDesigner® Document Version: 16.6 – 2016-02-22 Data Modeling Content 1 Building Data Models ...........................................................8 1.1 Getting Started with Data Modeling...................................................8 Conceptual Data Models........................................................8 Logical Data Models...........................................................9 Physical Data Models..........................................................9 Creating a Data Model.........................................................10 Customizing your Modeling Environment........................................... 15 1.2 Conceptual and Logical Diagrams...................................................26 Supported CDM/LDM Notations.................................................27 Conceptual Diagrams.........................................................31 Logical Diagrams............................................................43 Data Items (CDM)............................................................47 Entities (CDM/LDM)..........................................................49 Attributes (CDM/LDM)........................................................55 Identifiers (CDM/LDM)........................................................58 Relationships (CDM/LDM)..................................................... 59 Associations and Association Links (CDM)..........................................70 Inheritances (CDM/LDM)......................................................77 1.3 Physical Diagrams..............................................................82
    [Show full text]
  • Integration Definition for Function Modeling (IDEF0)
    NIST U.S. DEPARTMENT OF COMMERCE PUBLICATIONS £ Technology Administration National Institute of Standards and Technology FIPS PUB 183 FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION INTEGRATION DEFINITION FOR FUNCTION MODELING (IDEFO) » Category: Software Standard SUBCATEGORY: MODELING TECHNIQUES 1993 December 21 183 PUB FIPS JK- 45C .AS A3 //I S3 IS 93 FIPS PUB 183 FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION INTEGRATION DEFINITION FOR FUNCTION MODELING (IDEFO) Category: Software Standard Subcategory: Modeling Techniques Computer Systems Laboratory National Institute of Standards and Technology Gaithersburg, MD 20899 Issued December 21, 1993 U.S. Department of Commerce Ronald H. Brown, Secretary Technology Administration Mary L. Good, Under Secretary for Technology National Institute of Standards and Technology Arati Prabhakar, Director Foreword The Federal Information Processing Standards Publication Series of the National Institute of Standards and Technology (NIST) is the official publication relating to standards and guidelines adopted and promulgated under the provisions of Section 111 (d) of the Federal Property and Administrative Services Act of 1949 as amended by the Computer Security Act of 1987, Public Law 100-235. These mandates have given the Secretary of Commerce and NIST important responsibilities for improving the utilization and management of computer and related telecommunications systems in the Federal Government. The NIST, through its Computer Systems Laboratory, provides leadership, technical guidance,
    [Show full text]
  • Metamodeling and Method Engineering with Conceptbase”
    This is a pre-print of the book chapter M. Jeusfeld: “Metamodeling and method engineering with ConceptBase” . In Jeusfeld, M.A., Jarke, M., Mylopoulos, J. (eds): Metamodeling for Method Engineering, pp. 89-168. The MIT Press., 2009; the original book is available from MIT Press http://mitpress.mit.edu/node/192290 This pre-print may only be used for scholar, non-commercial purposes. Most of the sources for the examples in this chapter are available via http://merkur.informatik.rwth-aachen.de/pub/bscw.cgi/3782591 for download. They require ConceptBase 7.0 or later available from http://conceptbase.cc. Metamodeling and Method Engineering with ConceptBase Manfred Jeusfeld Abstract. This chapter provides a practical guide on how to use the meta data repository ConceptBase to design information modeling methods by using meta- modeling. After motivating the abstraction principles behind meta-modeling, the language Telos as realized in ConceptBase is presented. First, a standard factual representation of statements at any IRDS abstraction level is defined. Then, the foundation of Telos as a logical theory is elaborated yielding simple fixpoint semantics. The principles for object naming, instantiation, attribution, and specialization are reflected by roughly 30 logical axioms. After the language axiomatization, user-defined rules, constraints and queries are introduced. The first part is concluded by a description of active rules that allows the specification of reactions of ConceptBase to external events. The second part applies the language features of the first part to a full-fledged information modeling method: The Yourdan method for Modern Structured Analysis. The notations of the Yourdan method are designed along the IRDS framework.
    [Show full text]
  • Using Telelogic DOORS and Microsoft Visio to Model and Visualize Complex Business Processes
    Using Telelogic DOORS and Microsoft Visio to Model and Visualize Complex Business Processes “The Business Driven Application Lifecycle” Bob Sherman Procter & Gamble Pharmaceuticals [email protected] Michael Sutherland Galactic Solutions Group, LLC [email protected] Prepared for the Telelogic 2005 User Group Conference, Americas & Asia/Pacific http://www.telelogic.com/news/usergroup/us2005/index.cfm 24 October 2005 Abstract: The fact that most Information Technology (IT) projects fail as a result of requirements management problems is common knowledge. What is not commonly recognized is that the widely haled “use case” and Object Oriented Analysis and Design (OOAD) phenomenon have resulted in little (if any) abatement of IT project failures. In fact, ten years after the advent of these methods, every major IT industry research group remains aligned on the fact that these projects are still failing at an alarming rate (less than a 30% success rate). Ironically, the popularity of use case and OOAD (e.g. UML) methods may be doing more harm than good by diverting our attention away from addressing the real root cause of IT project failures (when you have a new hammer, everything looks like a nail). This paper asserts that, the real root cause of IT project failures centers around the failure to map requirements to an accurate, precise, comprehensive, optimized business model. This argument will be supported by a using a brief recap of the history of use case and OOAD methods to identify differences between the problems these methods were intended to address and the challenges of today’s IT projects.
    [Show full text]
  • Metamodeling the Enhanced Entity-Relationship Model
    Metamodeling the Enhanced Entity-Relationship Model Robson N. Fidalgo1, Edson Alves1, Sergio España2, Jaelson Castro1, Oscar Pastor2 1 Center for Informatics, Federal University of Pernambuco, Recife(PE), Brazil {rdnf, eas4, jbc}@cin.ufpe.br 2 Centro de Investigación ProS, Universitat Politècnica de València, València, España {sergio.espana,opastor}@pros.upv.es Abstract. A metamodel provides an abstract syntax to distinguish between valid and invalid models. That is, a metamodel is as useful for a modeling language as a grammar is for a programming language. In this context, although the Enhanced Entity-Relationship (EER) Model is the ”de facto” standard modeling language for database conceptual design, to the best of our knowledge, there are only two proposals of EER metamodels, which do not provide a full support to Chen’s notation. Furthermore, neither a discussion about the engineering used for specifying these metamodels is presented nor a comparative analysis among them is made. With the aim at overcoming these drawbacks, we show a detailed and practical view of how to formalize the EER Model by means of a metamodel that (i) covers all elements of the Chen’s notation, (ii) defines well-formedness rules needed for creating syntactically correct EER schemas, and (iii) can be used as a starting point to create Computer Aided Software Engineering (CASE) tools for EER modeling, interchange metadata among these tools, perform automatic SQL/DDL code generation, and/or extend (or reuse part of) the EER Model. In order to show the feasibility, expressiveness, and usefulness of our metamodel (named EERMM), we have developed a CASE tool (named EERCASE), which has been tested with a practical example that covers all EER constructors, confirming that our metamodel is feasible, useful, more expressive than related ones and correctly defined.
    [Show full text]
  • The Importance of Data Models in Enterprise Metadata Management
    THE IMPORTANCE OF DATA MODELS IN ENTERPRISE METADATA MANAGEMENT October 19, 2017 © 2016 ASG Technologies Group, Inc. All rights reserved HAPPINESS IS… SOURCE: 10/18/2017 TODAY SHOW – “THE BLUE ZONE OF HAPPINESS” – DAN BUETTNER • 3 Close Friends • Get a Dog • Good Light • Get Religion • Get Married…. Stay Married • Volunteer • “Money will buy you Happiness… well, it’s more about Financial Security” • “Our Data Models are now incorporated within our corporate metadata repository” © 2016 ASG Technologies Group, Inc. All rights reserved 3 POINTS TO REMEMBER SOURCE: 10/19/2017 DAMA NYC – NOONTIME SPEAKER SLOT – MIKE WANYO – ASG TECHNOLOGIES 1. Happiness is individually sought and achievable © 2016 ASG Technologies Group, Inc. All rights reserved 3 POINTS TO REMEMBER SOURCE: 10/19/2017 DAMA NYC – NOONTIME SPEAKER SLOT – MIKE WANYO – ASG TECHNOLOGIES 1. Happiness is individually sought and achievable 2. Data Models can in be incorporated into your corporate metadata repository © 2016 ASG Technologies Group, Inc. All rights reserved 3 POINTS TO REMEMBER SOURCE: 10/19/2017 DAMA NYC – NOONTIME SPEAKER SLOT – MIKE WANYO – ASG TECHNOLOGIES 1. Happiness is individually sought and achievable 2. Data Models can in be incorporated into your corporate metadata repository 3. ASG Technologies can provide an overall solution with services to accomplish #2 above and more for your company. © 2016 ASG Technologies Group, Inc. All rights reserved AGENDA Data model imports to the metadata collection View and search capabilities Traceability of physical and logical
    [Show full text]
  • CA Erwin Data Modeler Release Notes
    CA ERwin® Data Modeler Release Notes Release 9.5.1 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the “Documentation”) is for your informational purposes only and is subject to change or withdrawal by CA at any time. This Documentation is proprietary information of CA and may not be copied, transferred, reproduced, disclosed, modified or duplicated, in whole or in part, without the prior written consent of CA. If you are a licensed user of the software product(s) addressed in the Documentation, you may print or otherwise make available a reasonable number of copies of the Documentation for internal use by you and your employees in connection with that software, provided that all CA copyright notices and legends are affixed to each reproduced copy. The right to print or otherwise make available copies of the Documentation is limited to the period during which the applicable license for such software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to certify in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed. TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION “AS IS” WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS DOCUMENTATION, INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.
    [Show full text]
  • 1. Enterprise Data Planning
    1. Enterprise Data Planning Introduction: Enterprise data planning is a strategy for CMS business-focused data standardization. Its objective is to strengthen the agency’s ability to manage and share data and information. NOTE: There are references within this section that refer the reader to the Operating Procedures and Guidelines section. Please download the Operating Procedures and Guidelines section to view these references. The major Enterprise Data Planning products are: Enterprise data objects in the form of Subject Areas and Enterprise Data Entities (Supertypes); and Enterprise Attributes (Data Elements); and Information Security Category settings that establish the controls for appropriate use of CMS data resources. The Enterprise Data Planning process diagram depicts the milestones, control points, and deliverables as they occur during the following steps: Initiate Enterprise Data Planning Define Enterprise Subject Areas Model Enterprise Data Assign Information Security Categories Create the EDM Metadata Repository Publish the Enterprise Data Model Activities in this process are directed by the CMS Enterprise Data Architecture Approach. Key Deliverables: The Enterprise Data Planning process creates the following deliverables: Business Process Model Enterprise Subject Area Definitions, Subject Area Create Read Update Delete Archive (CRUDA) Matrix, Enterprise Data Model, Enterprise Metadata Repository, Business Terms, Enterprise Data Architecture for Repository update. Exhibit 1. Enterprise Data Planning process
    [Show full text]
  • The Layman's Guide to Reading Data Models
    Data Architecture & Engineering Services The Layman’s Guide to Reading Data Models A data model shows a data asset’s structure, including the relationships and constraints that determine how data will be stored and accessed. 1. Common Types of Data Models Conceptual Data Model A conceptual data model defines high-level relationships between real-world entities in a particular domain. Entities are typically depicted in boxes, while lines or arrows map the relationships between entities (as shown in Figure 1). Figure 1: Conceptual Data Model Logical Data Model A logical data model defines how a data model should be implemented, with as much detail as possible, without regard for its physical implementation in a database. Within a logical data model, an entity’s box contains a list of the entity’s attributes. One or more attributes is designated as a primary key, whose value uniquely specifies an instance of that entity. A primary key may be referred to in another entity as a foreign key. In the Figure 2 example, each Employee works for only one Employer. Each Employer may have zero or more Employees. This is indicated via the model’s line notation (refer to the Describing Relationships section). Figure 2: Logical Data Model Last Updated: 03/30/2021 OIT|EADG|DEA|DAES 1 The Layman’s Guide to Reading Data Models Physical Data Model A physical data model describes the implementation of a data model in a database (as shown in Figure 3). Entities are described as tables, Attributes are translated to table column, and Each column’s data type is specified.
    [Show full text]
  • Meta-Modeling and Modeling Languages
    member of Meta-Modeling and Modeling Languages Prof. Dr. Knut Hinkelmann Prof. Dr. Knut Hinkelmann Models and Modelling Model A reproduction of the part of reality which contains the essential aspects to be investigated. Modelling Describing and Representing all relevant aspects of a domain in a defined language. Result of modelling is a model. Prof. Dr. Knut Hinkelmann Metamodel and Modeling2 Languages Model in Architecture real object model house architect’s drawing (plan) Prof. Dr. Knut Hinkelmann Metamodel and Modeling Languages 3 Model and Modeling Language in Architecture real object model modeling language (concrete syntax) object types: wall door window house architect’s drawing (plan) Prof. Dr. Knut Hinkelmann Metamodel and Modeling Languages 4 Modelling Language ■ A modelling "language" specifies the building blocks (elements) from which a model can be made. ■ There can be different types of created with Modelling Model modelling languages, depending Language on the kind of model indirect model of ♦ graphical model Reality ♦ textual description ♦ mathematical model ♦ conceptual model ♦ physical model Metamodel and Modeling Languages Prof. Dr. Knut Hinkelmann 5 Modeling Model Language Prof. Dr. Knut Hinkelmann Metamodel and Modeling Languages 6 Model and Meta-Model in Architecture real object model modeling language meta-model (concrete syntax) (abstract syntax) object types: object types: • wall wall • door • window door rules: • a door is adjacent to window a wall on both sides • Windows are on outer walls. house architect’s drawing (plan) Prof. Dr. Knut Hinkelmann Metamodel and Modeling Languages 7 Meta-model A meta-model defines the semantics of the modelling language, i.e. the building blocks that can be used to Meta-model make a model.
    [Show full text]
  • A Study on Traditional and Evolutionary Software Development Models
    INTERNATIONAL JOURNAL OF SCIENTIFIC & TECHNOLOGY RESEARCH VOLUME 6, ISSUE 07, JULY 2017 ISSN 2277-8616 A Study On Traditional And Evolutionary Software Development Models Kamran Rasheed, Muhammad Imran, Muhammad Noman, Muhammad Iqbal Abstract: Today, Computing technologies are becoming the pioneers of the organizations, and helpful in individual functionality i.e. added to computing device we need to add softwares. Set of instruction or computer program is known as software. The development of software is done through some traditional or some new or evolutionary models. Software development is becoming a key and a successful business nowadays. Without software, all hardware is useless. Some collective steps that are performed in the development of these are known as Software development life cycle (SDLC). There are some adaptive and predictive models for developing software. Predictive mean “already known” like WATERFALL, Spiral, Prototype and V-shaped models while Adaptive model include agile (Scrum). All methodologies of both adaptive and predictive have their own procedure and steps. Predictive are Static and Adaptive are dynamic mean change cannot be made to the predictive while adaptive have the capability of changing. The purpose of this study is to get familiar with all these and discuss their uses and steps of development. This discussion will be helpful in deciding which model they should use in which circumstance and what are the development step including in each model. Keywords: Adaptive vs. Predictive; Software development methodologies; Agile vs. Conventional models; Adaptive and Predictive methodologies; SDLC ———————————————————— I. INTRODUCTION While adaptive models are models that are not fixed or Computing Technology has created so much ease for the bounded by the specific development steps and also it says human that is why changes are occuring with enormous “Welcome Changes’ whenever requires.
    [Show full text]
  • Appendix A: a Practical Guide to Entity-Relationship Modeling
    Appendix A: A Practical Guide to Entity-Relationship Modeling A Practical Guide to Entity-Relationship Modeling Il-Yeol Song and Kristin Froehlich College of Information Science and Technology Drexel University Philadelphia, PA 19104 Abstract The Entity-Relationship (ER) model and its accompanying ER diagrams are widely used for database design and Systems Analysis. Many books and articles just provide a definition of each modeling component and give examples of pre-built ER diagrams. Beginners in data modeling have a great deal of difficulty learning how to approach a given problem, what questions to ask in order to build a model, what rules to use while constructing an ER diagram, and why one diagram is better than another. In this paper, therefore, we present step-by-step guidelines, a set of decision rules proven to be useful in building ER diagrams, and a case study problem with a preferred answer as well as a set of incorrect diagrams for the problem. The guidelines and decision rules have been successfully used in our beginning Database Management Systems course for the last eight years. The case study will provide readers with a detailed approach to the modeling process and a deeper understanding of data modeling. Introduction Entity relationship diagrams (ERD) are widely used in database design and systems analysis to represent systems or problem domains. The ERD was introduced by Chen (1976) in early 1976. Teorey, Yang, and Fry (1986) present an extended ER model for relational database design. The ERD models a given problem in terms of its essential elements and the interactions between those elements in a problem domain.
    [Show full text]