UNIVERSITY OF LETHBRIDGE FACULTY OF MANAGEMENT Management 3830 - Contemporary Database Applications (Using Access) Term: Spring 2008 Instructor: Brian Dobing, Room E424, 329-2492, brian.dobing@uleth.ca Class Web Page: http://classes.uleth.ca/200801/mgt3830a Class Times: Mon, Wed 1:40 – 2:55 PM W731 Monday classes from Jan 28 on will be in the Anderson Hall 149 Office Hours: Mon, Wed 9:00 – 11:00 AM Other times may be arranged by appointment ______________________________________________________________________________ Overview Working in pairs, students will design and build a small database system for a business application following the five-stage model below: 1. create a data model for the new system; 2. design a database structure based on the data model; 3. design and build a user interface for transaction processing; 4. design and build management reports for analysis and decision making; and, 5. combine all the above into a complete, documented, usable and well-tested system. Corerequisites This course has two corequisites, Management 3061 and Computer Science 1620. Starting next year, either of these courses will be sufficient so that will also be in effect for the current class. This class is available for students not majoring in either IS or Computer Science. In those cases, completion of Mgt 3061 is recommended but not required. No prior knowledge of Microsoft Access is required. Computer Science 1620 provides an introduction to programming concepts that are useful when working with Visual Basic for Applications (VBA), the Access programming language. However, this class requires little programming and no knowledge of C++ (or any other programming language) is needed. If you do not have or plan to take either of the corequisites, please let me know before the start of classes to see if some alternate arrangements can be made. Students with neither of the corequisites and no waiver can be forced to withdraw from the course at any time by the Program Office. 1 Credit Limitations (mostly for Computer Science students) You cannot receive credit for both Computer Science 3660 and Management 3830. Computer Science majors who do not take 3660 can receive credit for this class. Systems Project The systems project has been divided into separate assignments called milestones. The final three milestones are cumulative. You cannot simply accept a low grade on milestone 5 or 6 and forget about it. The final milestone requires that you submit the complete project, including corrections to work done in milestones 5 and 6. You are responsible for building a system and you need to do whatever it takes to succeed. As with real systems, the answers cannot always be found in specific chapters of a textbook. Most of you will have limited experience with Access. You will need to develop a strategy to effectively learn this software, through books, on-line help, in-class demonstrations and, most importantly, experimentation. The schedule on the last page of this syllabus suggests readings for some of the topics. You will probably find that learning Access is more difficult than learning Word or Excel. Each milestone will normally be done in teams of two students each. No three-person teams will be permitted, even if this means that someone must work alone. You can change partners any time during the first four milestones, or choose to work alone. But the final three milestones are cumulative and are best done by consistent teams (although you can still change or drop a partner if necessary). Two projects of equal quality will get the same grade, even if one is by a twoperson team and the other is by someone working alone. Assignment Rules All assignments must be submitted by email by noon on due date. Access database assignments must be submitted using Access 2007. No handwritten assignments will be accepted. For data models you can use Word or other software designed for drawing. Each milestone will specify whether printed copies are required. Assignments are graded primarily for content, but presentation, spelling and grammar are also important where relevant I will verify that the assignments have been received and are readable before class. When requested, printed copies of assignments are due at the start of class. Any extensions due to lab problems, weather, or other reasons will be emailed to the class list and posted on the course web page. Please look there first if any unusual events occur. Written assignments can also be left under the door of my office if I'm not there. Submitted assignments may be used during the class to illustrate different ways of approaching a problem. For the first four milestones, there will be a 10% penalty for submissions received between the due time and the start of class and a 25% penalty for submissions made during class time. 2 Because the solutions will be discussed in class, no submissions can be accepted once the class is over. For the final three milestones, late submissions will be accepted with a penalty of 25% per day. Late penalties are subtracted from the grade you otherwise would have earned. So if Milestone 1 is submitted an hour late and is worth 80/100, it would receive a grade of 70/100. A 50% penalty means a loss of 50 points, rather than receiving half what you normally would. For milestones 2 and 3, solutions will be presented which represent the final product that would normally result after an extensive negotiation between the user and the designers. Solutions may be simplified to limit the workload for the next stage. These solutions allow you to continue on the project without the risk of building on an incorrect foundation. Otherwise, you could begin with an incorrect data model, implement it in Access, and then be unable to generate the required reports. Teams are free to enhance the basic solution and will receive credit for doing so in the final milestone. This will be further discussed in class. Lab Facilities and Software University Computer Labs, where most of you will build your Access databases, can become very busy at critical times. Unfortunately, this is unlikely to change. You can use your own computer, but the official class software is Access 2007. Course Web Page: Material will be posted on the course web page: http://classes.uleth.ca/200801/mgt3830a You should be able to find the course syllabus, assignments, and some class notes. Any subsequent corrections, additions, etc. will also be posted on the web page. You are responsible for checking your email regularly. I will try to respond to email questions. However, I cannot provide long and detailed responses that way. Some questions may be answered on the class web page and/or brought up in the following class. Textbooks and, Readings The recommended (but not required) Access textbook is: Matthew MacDonald, Access 2007: The Missing Manual, Pogue Press/O’Reilly, 2007. This book is new for this term and should be available at a reasonable price. Those with absolutely no prior experience with Access might also want to pick up a book aimed more for that audience. The Shelly/Cashman books (used for Mgt 2060) provide excellent introductions and are well illustrated with screen shots. But because some of you will already have that book, I have selected one that is a bit more advanced. 3 Books on earlier versions of Access are not that useful for beginners because the interface has changed considerably (as it has for all Office software). However, the capabilities of Access and the underlying concepts have not changed very much. Access comes with its own sample “Northwinds” database. You can find examples of many features by looking through the forms and reports and seeing how they do things. Finding ideas in Northwinds, books, sample databases and Access web sites is an essential part of the learning process. However, you are expected to apply the ideas and not just make a copy of Northwinds or some similar example. The following titles are on reserve at the Library: Form Design: Business Forms, Made E-Z Products, 2001. Ready-To-Use Business Forms: A Complete Package For The Small Business, Self-Counsel Press, 2000. Data Modeling: Michael Reingruber and William W. Gregory, The Data Modeling Handbook: A Best-Practice Approach To Building Quality Data Models, Wiley, C1994. Michael J. Hernandez, Database Design For Mere Mortals : A Hands-On Guide To Relational Database Design, Addison-Wesley Developers Press, 1997. The library also has a few books on VBA (Visual Basic for Applications, the programming language used with Access) if you are interested. VBA will be introduced in this class but you will not need to do any serious programming. Grading Your final grade will be determined using the following percentages: Project 60 (Each milestone value is shown below) Midterm 15 Final Exam 25 Although the exams are worth only 40% of you grade, this may be misleading. Individual exam marks typically have greater variance than project marks, resulting in greater impact on the final grade. Below is an approximate grading curve. 95-100 90-94 86-89 A+ A A- 82-85 78-81 74-77 B+ B B- 70-73 66-69 62-65 4 C+ C C- 58-61 50-57 < 50 D+ D F Final scores will be rounded, e.g., 77.5 will be a B. The actual grade distributions for this semester may be adjusted (but only to the advantage of students) and will not be determined until the end of the semester when all marks are in. The final grade distribution will be consistent with past classes. Academic Integrity It is critical to the reputation of the Faculty of Management, and of our degrees, that everyone associated with our faculty behave with the highest academic integrity. As a Faculty that helps create business and government leaders, we have a special obligation to ensure that our ethical standards are beyond reproach. Any dishonesty in our academic transactions violates this trust. The University of Lethbridge Calendar addresses the issue of academic dishonesty under the heading “Student Discipline Policy. Of particular concern, but certainly not the only violations, are: copying someone else's work, even with minor modifications and with or without their permission, from storage media, printed copy, or even by observing what they are doing providing a digital version or printout or otherwise allowing someone else to copy your work having someone else to do all or part of your assignment working jointly with others to create a single solution and then customizing it for each student presenting code taken substantially from books, CD-ROMs, the Internet or other sources as your own Students cheating on exams or assisting others to do so will receive an "F" in the course. Cooperation between teams is generally encouraged when it involves technical matters, such as how Access works. But close cooperation on content resulting in virtually identical submissions is not acceptable. Milestones that include material that has obviously been copied between two or more teams will ALL receive a mark of ZERO. Thus, it is important that you protect your work against copying. Any significant copying of programs found in other books or on the Internet will be regarded as a serious violation and will also receive a mark of ZERO. Receiving any substantial outside assistance from Access experts is not acceptable. However, applying ideas found in these sources is strongly encouraged. If you do copy anything, make a note of it just as you would reference a quotation in a term paper. If you are unsure about what is or is not acceptable, please see me first. The instructor reserves the right to use turnitin or other services to identify copied material. You also have some responsibility to ensure that your partner does not violate the policy on Academic Integrity. Should a violation occur, both members are jointly accountable unless the violation can be clearly attributed to a specific individual. 5 PROJECT MILESTONES Each milestone is a basic step towards building a database system. Further details on each Milestone will be distributed in class. Milestone 0 – Entities and Attributes (20 marks) Identify the key entities and attributes for a system. Milestone 1 – Practice Data Model (30 marks) Create a practice data model for an organization. Milestone 2 - Data Model (100 marks) Create a data model capable of supporting the operations and management requirements identified in the organization description. An important part of this milestone is determining what those requirements are. Some may not be explicitly stated, but nevertheless be critical to successful operations. Also consider possible management reports for analysis and decision making, and what data they will require. Data may also be needed for organizational control, such as tracking which employee has processed each transaction. Milestone 3 - Access Database (20 marks) Implement the data model as a relational database in Access. You will be given a data model to work with, rather than using your own from Milestone 2. Create each Access table and field needed and choose an appropriate data type for each field. Choose a key field(s) for each table. Then build a relationship diagram, which will resemble your data model. The diagram should fit on the screen and be well organized with all fields visible. (In other words, each data file box should be large enough that no scroll bars are needed.) Add relationships, including referential integrity where appropriate. Captions, validation rules, etc. should not be added at this time. Nor should you add any data. Milestone 4 - Access Queries (80 marks) Create a variety of queries to retrieve information, using the Access database (including data) distributed after Milestone 3. Some of these queries may be useful in creating Forms or Reports in later milestones. Milestone 5 - Access Data Entry and Control (100 marks) Using your database from Milestone 4, the first step is to add control features to the tables (e.g., field captions, field sizes, integrity checks, etc.). Then you can create Access Forms, primarily designed for data entry. For example, systems must often be able to add new customers, modify 6 data for existing ones (e.g., a new address), and record basic transactions. In this milestone, you will create basic but well-designed data entry forms that should allow record additions and modifications. Additional features will be added in Milestone 7. Milestone 6 - Access Reports (100 marks) Every organization requires a variety of printed output from databases. In Access, printed output is generally done using “Reports” while screen output is done using “Forms.” Thus, a Customer Receipt is an Access Report, even though we do not usually think of them as reports in the normal sense of the term. The purpose of the reports will be specified, but you will need to determine what data should be included and how it should be organized. Milestone 7 - Final System (150 marks) Each team will submit their final product, a working, documented system that provides at least the key functionality required. Attach a cover memo to explain what you have done and what features (if any) you have been unable to include. Be honest - if you hide problems that are discovered the penalty will be much greater. (That's true both for this assignment and in business generally.) There are four key parts to this milestone. First, you need to resubmit some material from earlier milestones. All forms (Milestone 5) and reports (Milestone 6) will be graded again. However, different aspects may be tested this time. A project could get a lower or higher score, even if nothing was changed. Second, you need to add a Switchboard Form and navigation buttons that allow users to move among the forms easily. The system may also require some prototype (not functional) security provisions, such as a password. Third, your system should provide some documentation to help someone use and maintain the system. While each Form should contain built in help, the time required to do this would be prohibitive. Instead, only one Form (which will be specified later) will require Help. Fourth, you may wish to add some extra features. Be sure to highlight these in your cover memo, or they might be missed. Keep in mind the fundamental goal of this course. The highest grades will go to the teams providing the best designed, documented and working systems that support the organization. 7 TENTATIVE CLASS SCHEDULE Dates Topic Readings Due Jan 7 Introduction to Database Management System Development Life Cycle Jan 9 Introduction to Database Design and Data Models Jan 14 Data Models – Identifiers and Simple Relationships MS 0 Prelim Jan 16 Data Models – Weak Entities and Cardinality MS 0 Jan 21 Data Models – Special Cases Jan 23 Data Models – Review Milestone 1 Jan 28 Access Tables and Relationships C 1,2 Jan 30 Building a Relational Database C5 Feb 4 Access Queries C 6,7 Feb 6 User Interface Design Feb 11 Creating Access Forms Feb 13 Normalization Feb 18 READING WEEK (Feb. 18 – 22) Feb 25 Improving Forms Feb 27 Report Design Mar 3 Creating Access Reports Mar 5 ***** MIDTERM ***** Mar 10 Creating Access Charts and Graphs Mar 12 Midterm Review, Documentation Mar 17 Switchboards, Linking Forms and Reports C 14 Mar 19 Data Integrity C4 Mar 24 Easter Monday – No Class Mar 26 SQL Mar 31 Macros and VBA Apr 2 Database Administration Apr 7 Completing Applications Apr 9 Project Issues Apr 14 System Review MS 1 MS 2 MS 3 C 12 C 13 MS 4 C 10,11 C9 MS 5 MS 6 C 15, 16 MS 7 Final Exam Highlighted classes will be held in Anderson Hall 149 Cn refers to chapters in the Access 2007 Missing Manual book 8