Ways of documenting Session 5: detailed requirements The Data Dictionary one any The Project A data dictionary Data Dictionary may be maintained
|
|
- Mitchell Warren
- 5 years ago
- Views:
Transcription
1 Session 5: The Data Dictionary relationship to systems analysis methodologies relationship to project management data definition vs. data representation taxonomy of data types COMP 477 /377, Fall, 2018 Mr. Weisert Project Dictionary 1. Data item definitions Ways of documenting detailed requirements Flowcharts + record layouts "Victorian novel" Structured analysis Object-oriented analysis UML with use-cases Discrete requirements list Incremental approach / stories No matter which one(s) you choose: There's one component you should always have. It goes with any of them. What is it? We saw this list before. The Project Data Dictionary A repository of rigorous definitions of every data item mentioned in the requirements documents. Its unique name Its type (What are the possibilities?) Its precise meaning, not the representation. (What it is, not what it looks like) Its attributes in the real world What kinds of data item? A data dictionary may be maintained With a specialized software product An independent data-dictionary program Part of a C.A.S.E. tool Some are also data directories What's that? With a general software product A spreadsheet processor A database manager A word processor Manually Stack of index cards or forms but unfortunately... COMP 477/377 fall, copyright 2015 Conrad Weisert
2 Many projects don't! If a project doesn't create and mantain a data dictionary, it may define data items: a. through inline documentation or footnotes This is particularly common with use-cases and user stories. We call that an implicit data dictionary. What's wrong with that? b. or not at all! Important!! The lack of a project data-dictionary is a common cause of failure of application development projects. What do we mean by "failure"? a. serious schedule overrun b. serious cost overrun c. never satisfies the users d. combination of the above An implicit data-dictionary example "Customers who place more than $10,000 business per year and have a good payment history or have been with us for more than 20 years are to receive priority treatment." - a business rule from a respected systems analysis textbook We saw that before! Are there data items there that should be defined? If so, should the business rule be rewritten? Obvious questions "Customers who place more than $10,000 business per year and have a good payment history or have been with us for more than 20 years are to receive priority treatment." For how many years must a customer have purchased more than $10,000 worth of merchandise? How recently? What is a good payment history? During how many years during that twenty-year period and how much must a customer have spent to have been with us? What does priority treatment mean? How should those questions be answered? COMP 477/377 fall, copyright 2015 Conrad Weisert
3 Computer programs manipulate two kinds of data Application domain data Exist in the real world Usually known to users / sponsors May be persistent or transient Program data Have no real-world existence Are none of the users' business! Are usually transient Examples? A taxonomy of data types The 3 fundamentally different kinds of data Some basic subtypes of those 3. This is all independent of any programming language, but most programming languages provide support for some or all of them. A data dictionary is concerned only (or mainly) with application-domain data. Why? Reminder: Application-domain data items: 3 basic types We explained last week: What those 3 basic types are Emphasis is on what an item is, not what it looks like Rigorous definition is the responsibility of the analyst Normally done in (what we're calling) phase 3, but can be augmented or clarified later, as needed. Internal representation will be determined later (by whom?) Application-domain data items: 3 basic types 1. Elementary items 2. Composite items 3. Container items (Java calls them Collections) COMP 477/377 fall, copyright 2015 Conrad Weisert
4 Application-domain data items: 3 basic types 1. Elementary items are not composed of other data items sometimes called "fields" or "elements" (when part of a composite item). defined in terms of their real world meaning 2. Composite items are: composed of other data items, which may be either elementary or composite, sometimes called "structures", "records", "blocks", "data flows", also called "entities" or "subjects" when they play a primary role in an application system defined mainly in terms of their components. Data items: 3 kinds 3. Container items are structures that hold other data items, which are usually either elementary or composite (sometimes other containers). either: static (staying the same size and shape throughout their life span), or dynamic (growing, shrinking, or reconfiguring either: homogeneous (all elements are of the same type), or heterogeneous (multiple kinds of data can be elements) defined in terms of their behavior Reminder: We then examined just the first major type We categorized elementary data in four main subcategories The systems analyst and user-audience are rarely interested in internal (in programs and files) representations. 1. Elementary data items Every elementary data item belongs to one (and only one) of these basic subtypes. discrete (or coded or enumerated) possible values belong to a finite set numeric some arithmetic operation is meaningful text (or character string) [see note on next page] logical (or Boolean or switch or indicator) 2 possible values (T/F, Y/N, on/off, 0/1, present/absent,... ) Are there any others? How do C#, Java, etc. designate them? COMP 477/377 fall, copyright 2015 Conrad Weisert
5 A language-dependent peculiarity In the C family of languages text data are often thought of as containers rather than elementary items! That's because they're usually represented by an array of char. But the great majority of char[] items and String objects are treated simply as fixed data: identifiers, titles, names, message text, etc. Programs can still use arrays when they need to scan or compose pieces of a string. Which of the four elementary subtypes do these belong to? MaritalStatus EmployeeName InterestRate TelephoneNumber DueDate BookTitle CreditLimit Sex AccountNumber Weight (of a shipment) Velocity City State ZIP code Color (of a product) Price (of an item) CreditApproved Attributes (or properties) of elementary data items Attributes of numeric data items: This is only for data definition; it doesn't restrict developers to any internal representation. unit of measure range precision scale Attributes of text data items: length internal format, delimiters Attributes of discrete data items: number of possible values (both current and potential) coding structure Avoid false numerics Many discrete data items are represented by a sequence of numeric digits. Examples? That doesn't make them numeric. Why not? But many of them have "number" as part of their name, e.g. accountnumber We emphasize what a data item is, not what it looks like. Some old-fashioned tools take the opposite view. Which ones? COMP 477/377 fall, copyright 2015 Conrad Weisert
6 Attributes of composite data items List of component data items with rules for including them Can often be defined by a language-dependent commented structure definition (C struct). De Marco's language-independent notation for specifying a composite data item: Symbol Meaning = is composed of + followed by ( ) optional { } iteration [ ] alternatives Composite item definition Example using DeMarco notation: EMPLOYEE INFO = NAME + DATE OF BIRTH + MARITAL STATUS { } DEPENDENT INFO + DATE HIRED HOURLY WAGE + [ MONTHLY SALARY] + (PREVIOUS EMPLOYER) + etc. It is assumed that user-reviewers will be able (with suitable briefing) to understand that. Examples of container data Static structures Arrays Dynamic structures: lists, stacks, queues trees, graphs dynamic arrays Why not character strings? External structures: files, data bases display / interface (GUI) objects Exploiting packaged application software documentation If It appears very likely that the project will choose a specific application software product, and documentation for that product defines some data items exactly the way we want them, and those data definitions are clear and easy to find in the vendor's documentation, and that documentation is available to everyone on the project team, whether or not we buy the product, Then: It is acceptable (and desirable) to avoid redundant work by just referring to (or copying) the product documentation. COMP 477/377 fall, copyright 2015 Conrad Weisert
7 Terminology update Java uses the term container in a different and narrower sense, to mean a GUI screen object (e.g. a window) that can contain other GUI objects. Java now uses the term collection in the more general sense, where we've been using container. Use whichever term you prefer as long as the context is clear. Elementary item Discrete item Numeric item Text item Logical item Taxonomy summary: the top of the tree Data item Composite item Records entities Other static tree structures Container item Arrays, vectors, matrices, tables Lists, stacks, queues Trees, Graphs Files, databases Windows, boxes Which ones are suited to being represented as object-oriented classes? Discrete COLOR (of a product) ACCOUNT NUMBER STATE (in an address) MARITAL STATUS BRANCH OFFICE CODE CREDIT CARD TYPE TELEPHONE NUMBER Text NAME (of an employee) DESCRIPTION (of a product) CITY (in an address) DUNNING LETTER Entity / subject EMPLOYEE VENDOR PRODUCT VEHICLE Examples Elementary items Composite items Numeric HOURS WORKED (of an employee) TEMPERATURE (of a substance) QUANTITY ORDERED (of a product) DATE SHIPPED (of an order) MASS (of a body) SPEED (of an object) DEPARTURE TIME (of a train) Logical CREDIT APPROVAL (for an order) NEW CUSTOMER FLAG UNION MEMBER (for an employee) AUDIT TRACE OPTION Other HOME ADDRESS (of an employee) CREDIT HISTORY (of a customer) SUBASSEMBLY (of a product) CURRENT ORBIT (of a satellite) Avoid false composites Don't confuse a mixed unit or structured representation of an elementary item with a true composite item. For example, these should be treated as elementary, not composite, items: Date = year + month + day PersonName = first + middle + last Time = hours + minutes + seconds Avoiding false composites is especially important to avoid clutter and complexity in a data dictionary COMP 477/377 fall, copyright 2015 Conrad Weisert
8 Data classes and inheritance Each basic data type can be divided into subtypes or data classes. Each such class can in turn be further divided into subclasses to any level. Data classes and inheritance Each class inherits the properties of its parent classes: data representation, esp. internal, and attributes associated functions and operations This inheritance principle can greatly simplify the definition of both data items and the functions or processes that operate on them (even without any object-oriented tools.) Classes and data items In a class hierarchy, properties (or attributes) of a class T are inherited by both: subclasses of T specific data items (instances, objects) of type T It is, therefore, unnecessary and undesirable (why?) to specify attributes in the dictionary definition of every data item. Nevertheless, many older tools (COBOL, some data-dictionary systems, etc.) demand that we do so! Would the "year-2000 crisis" have occurred, if everyone had understood this principle? Example We can define billingaddress as an instance of MailingAddress, where MailingAddress is a class that defines the structure and content of an address acceptable to post offices. Derived subclasses could include USStreetAddress, USBoxNoAddress, CanadaAddress, etc. It would then be redundant (and wrong) to define attributes of the individual data item billingaddress, such as number of lines for the street address portion and their maximum length format of a ZIP code Why? COMP 477/377 fall, copyright 2015 Conrad Weisert
9 Classes (or types) versus data items (or instances or objects) Inexperienced systems analysts and application designers sometimes confuse these two very different things. For example, these are appropriate names for classes, but not for data items. temperature date address Why not? What's wrong with them? Data items need more specific names (or to be components of a higher-level data aggregate! Ambiguous data names temperature: What is it the temperature of? When (starting temperature or current)? date: What is it the date of or for? shippingdate orderdate expirationdate etc. etc. address: What is it the address of? mailing address billing address home address Level of generality In a program with modular structure, the names of data items will depend upon the level of the program module: High-level modules will refer to a data item by its real-world name. A process Transaction module would refer to: customeraddress or address of customer dateshipped Low-level or general-purpose modules will use a more generic name. An edit (validation) module would refer to: address date Which is the analyst concerned with in phase 3? Warnings "The most pernicious and subtle bugs are system bugs arising from mismatched assumptions made by the authors of various components."--fred Brooks, p. 142 "Many, many failures concern exactly those aspects that were never quite specified."--v.a. Vyssotsky, Bell Laboratories, quoted by Dr. Brooks, same page. COMP 477/377 fall, copyright 2015 Conrad Weisert
Ways of documenting Session 5: detailed requirements The Data Dictionary one any The Project A data dictionary Data Dictionary may be maintained
Session 5: The Data Dictionary relationship to systems analysis methodologies relationship to project management data definition vs. data representation taxonomy of data types COMP 477 /377, Spring, 2017
More informationWeek 6: Data. Let's focus first on application domain data.
review of things we already (should) know criteria for external & internal representation basic elementary data types composite data types container data types derived subtypes abstract data types (ADT)
More informationSession 3: Data. Session 3a: Data
Session 3: Data Part a: 1. Data types 2. Data representation Part b: Data definition Computer programs manipulate two kinds of data Which are of interest to the analyst? A. Application domain data Exist
More informationSession 3b: Defining data items
Session 3b: Defining data items Sources of data items Establishing a project data dictionary Defining an elementary item Defining a composite data item COMP 320 / 420, Spring, 2018 Mr. Weisert Q: Which
More informationDefining Data Items Conrad Weisert (2003)
Defining Data Items Conrad Weisert (2003) Background -- one more missing component The failed-project documentation I described last month 2 lacked not only output specifications, but, worse, any data
More informationWeek 11: Case study: Designing, building, & testing a Person class Background for the Project Needed in many applications Is it possible? practical?
Week 11: Case study: Designing, building, & testing a Person class Background for the Project Needed in many applications Is it possible? practical? Background Many applications deal with records representing
More informationSession 2. Getting started with a well-structured system specification
Session 2 Getting started with a well-structured system specification COMP 320/420 Spring, 2018 Conrad Weisert The situation A representative approaches us. (or vice versa) He or she may be a. an executive
More informationSession 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams
Session 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams COMP 320 / 420, Spring, 2018 Conrad Weisert Criteria for the ESD (from session
More informationWeek 5: Background. A few observations on learning new programming languages. What's wrong with this (actual) protest from 1966?
Week 5: Background A few observations on learning new programming languages What's wrong with this (actual) protest from 1966? Programmer: "Switching to PL/I as our organization's standard programming
More informationSession 4b: Review of Program Quality
Session 4b: Review of Program Quality What makes one program "better" than another? COMP 170 -- Fall, 2013 Mr. Weisert What is a good program? Suppose we give the same assignment to two programmers (or
More informationSession 8: UML The Unified Modeling (or the Unstructured Muddling) language?
Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? A few observations, opinions, pros & cons COMP 320 / 420 Spring, 2018 Mr. Weisert Where did the UML come from? Object-oriented
More informationDoes anyone actually do this?
Session 11: Polymorphism Coding type-dependent logic Virtual functions Pure virtual functions and abstract classes Coding type-dependent logic Suppose we need to do something different depending on what
More informationEnhanced Entity- Relationship Models (EER)
Enhanced Entity- Relationship Models (EER) LECTURE 3 Dr. Philipp Leitner philipp.leitner@chalmers.se @xleitix LECTURE 3 Covers Small part of Chapter 3 Chapter 4 Please read this up until next lecture!
More informationSession 1b: Overview of systems analysis methodology
Session 1b: Overview of systems analysis methodology The system specification (ESD) Ways of documenting an ESD Criteria to be satisfied Historical survey Comp 320 / 420, spring, 2018 Alternative names
More informationChapter 2: Entity-Relationship Model
Chapter 2: Entity-Relationship Model! Entity Sets! Relationship Sets! Design Issues! Mapping Constraints! Keys! E-R Diagram! Extended E-R Features! Design of an E-R Database Schema! Reduction of an E-R
More informationDo these criteria apply to work in this course?
Bonus topic fo COMP 170 Program Quality Part 2: Review of Program readability Commentary Choosing data names Code layout Commentary Pitfalls Reading a program A program is not only something to be run
More informationWhy do we have to know all that? The stored program concept (the procedural paradigm) Memory
Session 1b: Background & Preliminaries What is computer programming? The stored-program concept. The procedural paradigm. What is a programming language? The object-oriented paradigm C#: ancestors & origins
More informationOO System Models Static Views
OO System Models Static Views UML Class & Object Diagrams Software Engineering OO Models Class Diagram Slide 1 Objective Introduces the evolutionary approach for building classes Explain how to identify
More informationMITOCW watch?v=kz7jjltq9r4
MITOCW watch?v=kz7jjltq9r4 PROFESSOR: We're going to look at the most fundamental of all mathematical data types, namely sets, and let's begin with the definitions. So informally, a set is a collection
More informationUnified Modeling Language (UML)
Appendix H Unified Modeling Language (UML) Preview The Unified Modeling Language (UML) is an object-oriented modeling language sponsored by the Object Management Group (OMG) and published as a standard
More informationQ &A on Entity Relationship Diagrams. What is the Point? 1 Q&A
1 Q&A Q &A on Entity Relationship Diagrams The objective of this lecture is to show you how to construct an Entity Relationship (ER) Diagram. We demonstrate these concepts through an example. To break
More informationChapter 6: Entity-Relationship Model
Chapter 6: Entity-Relationship Model Database System Concepts, 5th Ed. See www.db-book.com for conditions on re-use Chapter 6: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram
More informationPart 3. Why do we need both of them? The object-oriented programming paradigm (OOP) Two kinds of object. Important Special Kinds of Member Function
Part 3 The object-oriented programming paradigm (OOP) Two kinds of object Value objects The object contains the member data items Allocated automatically just like primitive (built-in) data items Suitable
More informationSession 6b: Specifying constraints
Session 6b: Specifying constraints Analysis vs. Design Constraints on the end product Constraints on the development COMP 320 / 420 Spring, 2018 Mr. Weisert "Analysis & Design" (review from session 1)
More information8.0. Classes and Classification In the real world
Chapter 8 Properties of Objects and Classes 1/57 Chapter 8: Properties of Objects and Classes 8.0. Review from Chapter 5 - Classes. ❶8.1. Subclasses and Inheritance. ❷8.2. More About Inheritance. ❹8.4.
More informationSystem development, design & implementation
System development, design & implementation Design of software The following are the principle for any software design : Modularity and partitioning : Top down methods are used through out the analysis
More informationLogical E/R Modeling: the Definition of Truth for Data
Logical E/R Modeling: the Definition of Truth for Data Jeff Jacobs Jeffrey Jacobs & Associates Belmont, CA phone: 650.571.7092 email: jeff@jeffreyjacobs.com http://www.jeffreyjacobs.com Survey Do you plan
More informationChapter 6: Entity-Relationship Model
Chapter 6: Entity-Relationship Model Database System Concepts, 5th Ed. See www.db-book.com for conditions on re-use Chapter 6: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram
More informationEntity-Relationship Modelling. Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables
Entity-Relationship Modelling Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables 1 Entity Sets A enterprise can be modeled as a collection of: entities, and
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical
More informationE-R Model. Hi! Here in this lecture we are going to discuss about the E-R Model.
E-R Model Hi! Here in this lecture we are going to discuss about the E-R Model. What is Entity-Relationship Model? The entity-relationship model is useful because, as we will soon see, it facilitates communication
More informationFINANCE MANAGER. Accounting Manual Finance Manager.
FINANCE MANAGER Accounting Manual 2010 Finance Manager Accounting Setup - Table of Contents Start Page... 1 Setup Which Files Should Be Completed First?... S-1 Items... S-2 Item Categories... S-7 Unit
More informationThis is an almost-two week homework; it is almost twice as long as usual. You should complete the first half of it by October 2.
Homework 4 1.264, Fall 2013 Data model for the aircraft parts distributor Due: Monday, October 7 This is an almost-two week homework; it is almost twice as long as usual. You should complete the first
More informationChapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin
Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain
More informationEarly programming languages ca. 1960
Session 5: Intro. to Java collections History Collection / container concept Shortcoming of original version Parameterized collections Example: ArrayList Comp 271, Spring, 2012 Mr. Weisert Early programming
More informationLecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček
Lecture 5 STRUCTURED ANALYSIS PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall 2015 1 Outline ² Yourdon Modern Structured Analysis (YMSA) Context diagram (CD) Data flow diagram
More informationChapter 2 Conceptual Modeling. Objectives
Chapter 2 Conceptual Modeling Basic Entity Relationship Diagrams 1 Objectives Definition of terms Importance of data modeling Write good names and definitions for entities, relationships, and attributes
More informationWeek 2: The Clojure Language. Background Basic structure A few of the most useful facilities. A modernized Lisp. An insider's opinion
Week 2: The Clojure Language Background Basic structure A few of the most useful facilities A modernized Lisp Review of Lisp's origins and development Why did Lisp need to be modernized? Relationship to
More informationProgress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development
Progress Report Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) CS 4354 Summer II 2014 Jill Seaman So far we have learned about the tools used in object-oriented
More informationCredit where Credit is Due. Lecture 4: Fundamentals of Object Technology. Goals for this Lecture. Real-World Objects
Lecture 4: Fundamentals of Object Technology Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2003 Credit where Credit is Due Some material presented in this lecture
More informationCaseComplete Roadmap
CaseComplete Roadmap Copyright 2004-2014 Serlio Software Development Corporation Contents Get started... 1 Create a project... 1 Set the vision and scope... 1 Brainstorm for primary actors and their goals...
More information(Murlidhar Group of Institutions,Bhavnagar Road, Rajkot) by:-assit. Prof. Vijay Vora (SOOADM) MCA-III
Analysis Modeling What is Analysis Modeling? Analysis modeling uses a combination of text and diagrammatic forms to depict(represent) requirements for data, function, and behavior These text and diagrammatic
More informationChapter. Relational Database Concepts COPYRIGHTED MATERIAL
Chapter Relational Database Concepts 1 COPYRIGHTED MATERIAL Every organization has data that needs to be collected, managed, and analyzed. A relational database fulfills these needs. Along with the powerful
More informationTERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY
LINGUACULTURE, 1, 2010 TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY Nancy Matis Abstract This article briefly presents an overview of the author's experience regarding the
More informationCSCI315 Database Design and Implementation Singapore Assignment 2 11 January 2018
School of Computer Science & Software Engineering Session: 1, January 2017 University of Wollongong Lecturer: Janusz R. Getta CSCI315 Database Design and Implementation Singapore 2018-1 Assignment 2 11
More informationchapter 2 G ETTING I NFORMATION FROM A TABLE
chapter 2 Chapter G ETTING I NFORMATION FROM A TABLE This chapter explains the basic technique for getting the information you want from a table when you do not want to make any changes to the data and
More informationDatabase Design with Entity Relationship Model
Database Design with Entity Relationship Model Vijay Kumar SICE, Computer Networking University of Missouri-Kansas City Kansas City, MO kumarv@umkc.edu Database Design Process Database design process integrates
More informationSOME TYPES AND USES OF DATA MODELS
3 SOME TYPES AND USES OF DATA MODELS CHAPTER OUTLINE 3.1 Different Types of Data Models 23 3.1.1 Physical Data Model 24 3.1.2 Logical Data Model 24 3.1.3 Conceptual Data Model 25 3.1.4 Canonical Data Model
More informationThe Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes.
Chapter 6: Entity-Relationship Model Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common data organization model The Relational
More informationShort Notes of CS201
#includes: Short Notes of CS201 The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with < and > if the file is a system
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes 5.1 What is UML? The Unified Modelling Language is a standard graphical language
More informationITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University
ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 03: Program Development Life Cycle Readings: Not Covered in Textbook Program Development
More informationWeek 7 Prolog overview
Week 7 Prolog overview A language designed for A.I. Logic programming paradigm Programmer specifies relationships among possible data values. User poses queries. What data value(s) will make this predicate
More informationCS201 - Introduction to Programming Glossary By
CS201 - Introduction to Programming Glossary By #include : The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with
More informationThe DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data.
Managing Data Data storage tool must provide the following features: Data definition (data structuring) Data entry (to add new data) Data editing (to change existing data) Querying (a means of extracting
More informationGoal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD
Domain analysis Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD OOA concerned with what, not how OOA activities focus on the domain layer
More informationER modeling. Lecture 4
ER modeling Lecture 4 1 Copyright 2007 STI - INNSBRUCK Today s lecture ER modeling Slides based on Introduction to Entity-relationship modeling at http://www.inf.unibz.it/~franconi/teaching/2000/ct481/er-modelling/
More informationDatabase Design Process
Database Design Process Real World Functional Requirements Requirements Analysis Database Requirements Functional Analysis Access Specifications Application Pgm Design E-R Modeling Choice of a DBMS Data
More informationChapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model.
Chapter 6: Entity-Relationship Model The Next Step: Designing DB Schema Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common
More informationGetting Started with AnyBook
Getting Started with AnyBook Where Everything Starts: The Main Invoice Screen When you first start the program, the Main Invoice Screen appears. AnyBook has many different functions, but since invoicing
More informationClass Diagrams in Analysis
3.2 Subject/Topic/Focus: Introduction to Classes Summary: Conceptual Modeling Notation: Classes Associations: Multiplicity, Roles, Aggregation, Composition Generalization Objects Analysis Process Literature:
More informationProject #1 rev 2 Computer Science 2334 Fall 2013 This project is individual work. Each student must complete this assignment independently.
Project #1 rev 2 Computer Science 2334 Fall 2013 This project is individual work. Each student must complete this assignment independently. User Request: Create a simple magazine data system. Milestones:
More informationProgress Report. Object-Oriented Software Development: Requirements elicitation and analysis. Object-oriented analysis, design, implementation
Progress Report Object-Oriented Software Development: Requirements elicitation and analysis CS 4354 Fall 2012 Jill Seaman So far we have learned about the tools used in object-oriented design and implementation
More information2004 John Mylopoulos. The Entity-Relationship Model John Mylopoulos. The Entity-Relationship Model John Mylopoulos
XVI. The Entity-Relationship Model The Entity Relationship Model The Entity-Relationship Model Entities, Relationships and Attributes Cardinalities, Identifiers and Generalization Documentation of E-R
More informationChapter (4) Enhanced Entity-Relationship and Object Modeling
Chapter (4) Enhanced Entity-Relationship and Object Modeling Objectives Concepts of subclass and superclass and the related concepts of specialization and generalization. Concept of category, which is
More informationWeiss Chapter 1 terminology (parenthesized numbers are page numbers)
Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement
More informationUnit 1: Working With Tables
Unit 1: Working With Tables Unit Overview This unit covers the basics of working with Tables and the Table wizard. It does not include working with fields, which is covered in Units 3 and 4. It is divided
More informationC++ Data Types. 1 Simple C++ Data Types 2. 3 Numeric Types Integers (whole numbers) Decimal Numbers... 5
C++ Data Types Contents 1 Simple C++ Data Types 2 2 Quick Note About Representations 3 3 Numeric Types 4 3.1 Integers (whole numbers)............................................ 4 3.2 Decimal Numbers.................................................
More informationEntity Relationship Data Model. Slides by: Shree Jaswal
Entity Relationship Data Model Slides by: Shree Jaswal Topics: Conceptual Modeling of a database, The Entity-Relationship (ER) Model, Entity Types, Entity Sets, Attributes, and Keys, Relationship Types,
More informationSoftware Engineering Prof.N.L.Sarda IIT Bombay. Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II)
Software Engineering Prof.N.L.Sarda IIT Bombay Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II) We will continue our discussion on process modeling. In the previous lecture
More information1 State, objects, and abstraction
6.01, Spring Semester, 2008 Course notes for Week 4 1 MASSACHVSETTS INSTITVTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science 6.01 Introduction to EECS I Spring Semester, 2008 Course
More informationDesign Pattern: Composite
Design Pattern: Composite Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Motivation
More informationXML Web Services Basics
MSDN Home XML Web Services Basics Page Options Roger Wolter Microsoft Corporation December 2001 Summary: An overview of the value of XML Web services for developers, with introductions to SOAP, WSDL, and
More information1: Specifying Requirements with Use Case Diagrams
Outline UML Design Supplement 1: Specifying Requirements with Use Case Diagrams Introduction Use Case Diagrams Writing Use Cases Guidelines for Effective Use Cases Slide adapted from Eran Toch s lecture
More informationSlide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Entity-Relationship Diagrams. This is Lecture e.
WORKFLOW ANALYSIS Audio Transcript Component 10 Unit 3 Lecture E Fundamentals of Health Workflow Process Analysis & Redesign Interpreting and Creating Process Diagrams Process Mapping UML notation for
More informationXV. The Entity-Relationship Model
XV. The Entity-Relationship Model The Entity-Relationship Model Entities, Relationships and Attributes Cardinalities, Identifiers and Generalization Documentation of E-R Diagrams and Business Rules Acknowledgment:
More informationIt can be confusing when you type something like the expressions below and get an error message. a range variable definition a vector of sine values
7_april_ranges_.mcd Understanding Ranges, Sequences, and Vectors Introduction New Mathcad users are sometimes confused by the difference between range variables and vectors. This is particularly true considering
More informationObject-Oriented Software Engineering. Chapter 2: Review of Object Orientation
Object-Oriented Software Engineering Chapter 2: Review of Object Orientation 2.1 What is Object Orientation? Procedural paradigm: Software is organized around the notion of procedures Procedural abstraction
More informationChapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,
Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations
More informationLesson 1. Why Use It? Terms to Know
describe how a table is designed and filled. describe a form and its use. know the appropriate time to use a sort or a query. see the value of key fields, common fields, and multiple-field sorts. describe
More informationData Modeling Using the Entity-Relationship (ER) Model
CHAPTER 3 Data Modeling Using the Entity-Relationship (ER) Model Copyright 2017 Ramez Elmasri and Shamkant B. Navathe Slide 1-1 Chapter Outline Overview of Database Design Process Example Database Application
More informationAccounting Information Systems, 2e (Kay/Ovlia) Chapter 2 Accounting Databases. Objective 1
Accounting Information Systems, 2e (Kay/Ovlia) Chapter 2 Accounting Databases Objective 1 1) One of the disadvantages of a relational database is that we can enter data once into the database, and then
More informationCopyright 2016 Ramez Elmasr and Shamkant B. Navathei
CHAPTER 3 Data Modeling Using the Entity-Relationship (ER) Model Slide 1-2 Chapter Outline Overview of Database Design Process Example Database Application (COMPANY) ER Model Concepts Entities and Attributes
More informationExtension Web Publishing 3 Lecture # 1. Chapter 6 Site Types and Architectures
Chapter 6 Site Types and Architectures Site Types Definition: A public Web site, an Internet Web site, an external Web site or simply a Web site is one that is not explicitly restricted to a particular
More informationThe Essence of Object Oriented Programming with Java and UML. Chapter 2. The Essence of Objects. What Is an Object-Oriented System?
Page 1 of 21 Page 2 of 21 and identity. Objects are members of a class, and the attributes and behavior of an object are defined by the class definition. The Essence of Object Oriented Programming with
More informationIntroduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types. Record Types. Pointer and Reference Types
Chapter 6 Topics WEEK E FOUR Data Types Introduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types Associative Arrays Record Types Union Types Pointer and Reference
More informationRequirements Analysis. SE 555 Software Requirements & Specification
Requirements Analysis Goals of Requirements Analysis Create requirements containing sufficient detail and of high enough quality to allow realistic project planning as well as successful design and implementation.
More informationCopyright 2016
This video will look at some naming convention that can be used on networks for computers, e-mail and file shares. There are many different naming conventions used in the world and these are just some
More informationLEADING WITH GRC. Approaching Integrated GRC. Knute Ohman, VP, GRC Program Manager. GRC Summit 2017 All Rights Reserved
LEADING WITH GRC Approaching Integrated GRC Knute Ohman, VP, GRC Program Manager Agenda 1. Organization Overview: Vision, Key Facts and Needs 2. GRC Program Governance, Challenges and Community 3. Implementation
More informationConceptual Data Models for Database Design
Conceptual Data Models for Database Design Entity Relationship (ER) Model The most popular high-level conceptual data model is the ER model. It is frequently used for the conceptual design of database
More informationThe Entity-Relationship Model (ER Model) - Part 2
Lecture 4 The Entity-Relationship Model (ER Model) - Part 2 By Michael Hahsler Based on slides for CS145 Introduction to Databases (Stanford) Lecture 4 > Section 2 What you will learn about in this section
More informationDesign Engineering. Dr. Marouane Kessentini Department of Computer Science
Design Engineering Dr. Marouane Kessentini Department of Computer Science 1 Design Starts mostly from/with requirements (evolving mostly from functionalities and other non functional characteristics) How
More informationEXAM Microsoft MTA Software Development Fundamentals. Buy Full Product.
Microsoft EXAM - 98-361 Microsoft MTA Software Development Fundamentals Buy Full Product http://www.examskey.com/98-361.html Examskey Microsoft 98-361 exam demo product is here for you to test the quality
More information22c:111 Programming Language Concepts. Fall Types I
22c:111 Programming Language Concepts Fall 2008 Types I Copyright 2007-08, The McGraw-Hill Company and Cesare Tinelli. These notes were originally developed by Allen Tucker, Robert Noonan and modified
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 2: Review of Object Orientation
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 2: Review of Object Orientation 2.1 What is Object Orientation? Procedural paradigm: Software is organized
More informationUnit 2 - Data Modeling. Pratian Technologies (India) Pvt. Ltd.
Unit 2 - Data Modeling Pratian Technologies (India) Pvt. Ltd. Topics Information Engineering Approaches to IS Developments SDLC Prototyping ER Modeling Why Data Modeling? Definition Information Engineering
More informationFull file at
Modern Database Management, 10e (Hoffer/Ramesh/Topi) Chapter 2 Modeling Data in the Organization 1) Data modeling may be the most important part of the systems development process because: A) data characteristics
More informationChapter 3.3 Programming Fundamentals. Languages Paradigms Basic Data Types Data Structures OO in Game Design Component Systems Design Patterns
Chapter 3.3 Programming Fundamentals Languages Paradigms Basic Data Types Data Structures OO in Game Design Component Systems Design Patterns Languages Language: A system composed of signs (symbols, indices,
More informationTHE UNIVERSITY OF ARIZONA
THE UNIVERSITY OF ARIZONA TUCSON, ARIZONA 85721 DEPARTMENT OF COMPUTER SC HNC'E Icon Newsletter #19 Madge T Griswold and Ralph E. Griswold September 25, 1985 1. Implementation News Version 5.9 of Icon
More informationSegregating Data Within Databases for Performance Prepared by Bill Hulsizer
Segregating Data Within Databases for Performance Prepared by Bill Hulsizer When designing databases, segregating data within tables is usually important and sometimes very important. The higher the volume
More information