* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Database - McMaster University
Microsoft Access wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Oracle Database wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Ingres (database) wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Concurrency control wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Relational model wikipedia , lookup
Clusterpoint wikipedia , lookup
Commerce 3KD3 Database Design and Management Yufei Yuan Course Web Site http://avenue.mcmaster.ca 1 Instructor Information Name: Dr. Y. Yuan Office: DSB AIC Wing A204 E-Mail: [email protected] Phone: (905) 525-9140 Ext 23982 Web Site: http://www.business.mcmaster.ca/ms is/profs/yuan/ TA: John Gilbert Email: [email protected] Office: DSB A211 Office Hours: To be arranged Tel: (905) 525-9140 x 26397 TA:Kenneth Owen Email: [email protected] Office: DSB A211 Office Hours: To be arranged Tel: (905) 525-9140 x 26195 Course Description Why should I take this course? What can I learn from this course? What is the business value of this course? How can I get a good grade from this course? Course Objective The growth of Internet and electronic commerce has tremendously amplified the importance of database technology, knowledge, and skills. In this course students will be able to learn the basic concepts of database and data warehouse, and gain first-hand experience through developing a real world e-commerce web database application. Course Topics Basic concepts of database Data modeling Data definition and manipulation language SQL Database administration Client/Server database development Databases using Internet technology Data warehouse and data mining 2 Business value of the course Knowing database is essential for IT related jobs and jobs that rely on the use of IS. Understand how to manage data, one of the most important resource for every organization. Learn how to develop an e-business web site with online database access. Teaching Philosophy Self-motivated active learning Learning by doing. Combination of theory and practice Learn from each other through class discussion and information sharing To be sensitive to the real world business problems Possible job titles that require database knowledge Database administrator Database analyst Database developer System analyst Database marketing Business intelligence Customer relationship management Sample job postings Database Analyst Posted: 19/08/2011 23:39:58 Location: Oakville, ON Salary: $40k to $45k/Yearly Specific Skills: Collect and document user's requirements, Design and develop database, Design, construct, modify, implement and test data models and database management systems. Architect, database Posted: 19/08/2011 23:39:54 Location: Toronto Centre, ON Salary: $100k to $125k/Yearly Specific Skills: Collect and document user's requirements, Design and develop database, Design, construct, modify, implement and test data models and database management systems, Operate database management systems to analyze data, Research and document data requirements, data collection and administration policy, and data access rules Sample job postings Database Developer $75k - $85k Per Year Industry: Aerospace Services. Requirements: You will have 5 years relevant work experience designing, building, installing, configuring or supporting data warehouses. As the successful candidate you will also have a strong understanding of relational and dimensional database structures, theories, principles and practices. You have experience with database platforms, including IBM DB2 and Microsoft SQL Server. Experience with SQL Server. Posted: 14/08/2008 21:53:05 Database Administrator $80k-$90k Per Year Industry: Financial Services. Requirements: SQL Server 2005 experience in a production environment. You must also have a keen attention to detail a strong customer-service orientation and the ability to work as part of a team. Excellent communications skills are also necessary. Posted: 16/08/2008 06:21:24 Course Material Lecture Notes: http://avenue.mcmaster.ca Recommended textbook: David M. Kroenke and David J. Auer, Database Concepts, Prentice Hall, Fifth Edition, 2011. Reference: Mike Morrison and Joline Morrison, Database-Driven Web Sites, Course Technology, 2000. Tutorials on the web 3 Course evaluation Assignments (build a simple online flower store web site) 35% 1. 2. 3. 4. 5. E-R data modeling (5%) Relational data modeling (5%) SQL and Client/Server database (10%) Web-database connection ASP (7.5%) Web-database application (7.5%) Team Project Assignment Assignment Assignment Assignment Assignment 35% proposal 5%, presentation 10%, report 20% Final Exam 30% 4 Team Project Design a database for an e-commerce application Real or hypothetic case Idea team with 2 - 3 members Sample projects available in INNIS room Team Project Basic system setting: Web Server Web Browser customer Internet connection SQL Server LAN connection Client Workstation Administrator Questions? Suggestions? Introduction to Database Management System 7 Database Example http://www.gtaa.com/webfids/arrivals.htm http://www.1800flowers.com/Flowers/welcome. asp?section=1 http://www.mapquest.com/ Database Approach Why database is so important? Data are viewed as an important, shared resource that must be managed like any other asset, such as people, material, equipment, and money 10 Evolution of Database Technology File processing Early hierarchical and network database Relational database Distributed database PC database Client/Server database Database using Internet technology Data warehouse and data mining Object-oriented database 9 Database - A Definition A database is a shared collection of interrelated data, designed to meet the needs of multiple types of end users. The data are stored so that they are independent of the program that use them. A common and controlled approach is used in adding new data and modifying and retrieving existing data. A database is not only shared by multiple users, but it is perceived differently by different users. - Martin, 1981 11 A Database Approach Customer Order Invoice Product Raw Material Vendor 12 Benefit of the Database Approach Minimal data redundancy Consistency of data Integration of data Data sharing Enforcement of standards Ease of application development Uniform security , privacy, and integrity controls Data accessibility and responsiveness Data independence Reduced program maintenance 13 Disadvantages of Database Processing Expensive Complex database management system more hardware resources higher operating costs specialized personnel technological managerial More vulnerable to failure, difficult to recover 14 Components of a Database Environment Database Administration Data Dictionary Directory User Group User / System Interface Database Management System Database 15 Levels (or Views) of Data ANSI/SPARC Model External Views View (User 1) View (User N) Mappings (logical data independence) Conceptual Model Mappings (physical data independence) Internal Model Physical Data Organization | | | Mappings (access method) 16 ANSI / SPARC Model American National Standards Institute (ANSI) Standards Planning and Requirements Committee (SPARC) The conceptual model defines the entire information resource at an abstract level. Each user view is a subset of the conceptual model, defined and formatted according to that user's needs. The internal model is a definition of the physical implementation of the data base by the DBMS (Schema, Subschema) The physical data organization determines how data are actually organized and stored 17 External user views Conceptual Model Internal Model Physical Data Organization Data Independence The property of being able to change the logical or physical structure of data without requiring changes to application programs that manipulate that data. 18 Functions of Database Management System Store, retrieve, and update data Provide integrity services to enforce database constraints Provide a user-accessible catalog of data descriptions Control concurrent processing Support logical transactions Recover from failure Provide security facilities Interface with communication control programs Provide utility services 19 Database Components Page 26 Figure 2-1 © 2000 Prentice Hall Database Development Process 20 Database Planning Analyze the goals and functions of organization, identify the present and future information needs (BSP). Identify business entities and relationships (Enterprise model) Database Design Requirement analysis - specify user's information needs Conceptual design - synthesize user views into conceptual data model. Implementation design - mapping conceptual model into internal model that can be processed by particular DBMS Top-Down Planning and Bottom-Up Design Top-Down Planning Business System Planning Physical (distributed) Databases Information Model Data Models Proposed Databases User Views Bottom-Up Design 21 The Database Initial Study Overall Purpose of the Initial Study: Analyze the company situation. Define problems and constraints. Define objectives. Define scope and boundaries. Investigate possible solutions 22 Feasibility study Evaluate possible alternatives Organizational Feasibility - how well the proposed system supports the strategic objectives of the organization Economic Feasibility - whether expected cost savings, increased profits, and other benefits exceed the cost of developing and operating the system Feasibility Study Technical Feasibility - whether reliable hardware and software needed can be acquired or developed in the required time Operational Feasibility - the willingness and ability of management, employees, customers, suppliers, etc. to operate, use and support the proposed system Cost / Benefit Analysis Tangible : can be expressed in monetary terms tangible cost : hardware, software, development and operating costs tangible benefits : increase in sales/profit, cost savings Cost / Benefit Analysis Intangible : difficult monetary measurement, but not impossible to quantified intangible cost : employee frustration, loss of customer goodwill intangible benefit : better customer service, less errors Approaches to Cost/Benefit Analysis Break-even Approach - attempts to measure the time it will take to recoup in benefits the original dollars invested Present Value Approach - attempts to value future dollars in terms of their values today Internal Rate of Return Approach - calculates the rate of return on the project investment Portfolio Analysis - analyze and balance risk and benefit among alternatives Scoring methods - multi-objective rating Conceptual Design Data modeling is used to create an abstract database structure that represents real-world objects. The design must be software- and hardware-independent. Minimal data rule: All that is needed is there, and all that is there is needed. 23 Logical Design Logical design translates the conceptual design into the internal model for a selected DBMS. It includes the design of tables, indexes, views, transactions, access authorities, and so on. 24 Table Design in Access 2000 Page 32 Figure 2-4 © 2000 Prentice Hall Relationships in Access 2000 Page 32 Figure 2-5 © 2000 Prentice Hall Physical Design Physical design is the process of selecting the data storage and data access characteristics of the database. It affects not only the location of the data in the storage device(s) but also the performance. 25 Physical Design Issues Performance Security Backup and Recovery Integrity Company standards Concurrency controls 26 Database Application development User interface Queries and user views Forms Reports Embedded processing functions Client/Server Access Web Access 28 Menus in Access 2000 Page 34 Figure 2-12 Queries in Access 2000 Page 34 Figure 2-8 Forms in Access 2000 Page 34 Figure 2-6b © 2000 Prentice Hall Reports in Access 2000 Page 34 Figure 2-10 Database Application development tools Host programming language Fourth generation language Application development tools Case tools Object-oriented language Web-Database connection tools 27