April 16th 2010 I.) Executive Summary Our Executive summary is a synopsis of all the important parts of our proposal document. First off is the Scope of Work, where we explain how we will simplify the process of querying, data mining, and data collection from the Flix2You database system which is the major problem that was defined by the corporate vice president, Steve LaSalle. Our Project Plan, is a Gantt chart that shows the major tasks we will have to complete, their due dates of those tasks, and the tasks must be order in which the tasks must be completed to move on with the solution for Flix2You. Our Project Resources and Budget, details the list of required personnel, software, and hardware purchases. In the User section, we explain the roles and responsibilities of the users of the database. We also enlighten you on the data access privileges. Then we identify the appropriate level of access that each group of users will need, clarify the process of changing access privileges, and rationalize the fact that the DBA is responsible for privilege changes. Within the Organization of Data, we show you what structure will be used to hold our extracted dataset. In Database Administration, we make clear the roles and responsibilities of critical personnel including knowledge of hardware, software, and crucial infrastructure. Inside Database Backup and Recovery, we detail our plan for backing up data in a secure way, storing the data until it is needed, and restoring the data in the event it is needed. We also, discuss the technical issues that may occur while using the site. Occurring in the Database Access and Security, we highlight the necessary multiple levels of security: our plan for database security, our sample privacy statement, and any anticipated legal debacles. For the Dataload, we discuss how we intend to update the data stored in the proposed database design, how frequently we intend the update to occur, and when we intend the update to occur, including how long it will take. In Database Reports, our team demonstrates our ability to create weekly reports that feature specific elements using SQL queries. The SQL queries will be preloaded into the DBMS, so there will be no need for the Flix2You management to get their hands dirty and can get quality reports without any knowledge of SQL. We also include a sample report. Finally, for the Legal Issues, we include our privacy statement and our terms and conditions that deal with the information, both public and private, between Flix2You staff and Flix2You customers. 1 April 16th 2010 II.) Project Scope A company has approached us in hopes that Team Dwight could possibly help them in their quest for a better, more effective database design since they are unsatisfied with their current database. Flix2You, the company with the database problem already has an effective ERD that they do not wish us to change. Their main problem is that they are, “data rich, but information poor,” meaning they have built-up many years worth of data, but no efficient way to extract the data for analysis. Along with the database design, they would like a set of rules that allows access to those employees who need it, assigning privileges, and analysis of data obtained. The problem that Team Dwight is faced with is that since this company has an existing ERD that works to your (Flix2You) liking, they are looking for a simpler way to query and mine data from their already existing ERD. That is where we come in. As a team, we have decided our best approach to taking on this task is by denormalizing the existing ERD into two data tables which will not be used by the Flix2You Company besides querying appropriate data. It will allow the Flix2You Company to keep their existing ERD which they have grown to know quite well while also allowing for simpler SQL writing. We understand at Dwight Enterprise that your existing database is to your liking as is. What you need is a faster and simpler way to access and utilize your data so that you it can be obtained smarter and faster. Our denormalized system will give you the timeframe you need to fasten the pace with your information used for corporate meetings allowing for quicker decision making giving you, as a company, the chance to beat out your competitors. Along with our new revamped data analysis system we are supplying you with all the necessary precautions to have a safe and effective database system. The two parts to these systems include software and hardware. Included in the software portion are Barracuda OffSite Backup system which will run you $50.00 per month ($600.00 annually), Symantec Endpoint Protection 11 ($250.00), Oracle 11g which is $12,000.00 (this may seem like a pricey investment but we assure you Oracle is well-known for one reason – they are the best), and a copy of SQL Server 2008 (which will be free of charge). As far as the hardware goes there will be the HP ProLiant DL380 G6 (for $2,500.00), the Barracuda Backup Server 690 (running $10,000), two 80Gb Western Digital Hard Drives ($80.00), and finally three 640Gb Western Digital Hard Drives (for $240.00). Having these items on your side will end up putting Flix2You not just on the map, but on top of the world. 2 April 16th 2010 III.) Project Management Project Plan Here is a screen shot of all the information from our Gantt chart which depicts roles, milestones and predecessors needed to complete each task. And this is a screen shot of the timeline along with the rest of the Gantt chart… 3 April 16th 2010 Project Resources and Budget Dwight Enterprise is composed of four team members that supply the five essential positions for the job. Team Dwight consists of four members who each chose their roles according to what skill set they felt was suited best for them. Ray Plociniak will be the, “Programmer,” for the database, writing SQL code fitting to the project. Jahn Beavers will take the position of the, “Project Manager,” overseeing the timeline and overall scope of the project. Edward Klecha has been chosen to be the, “Database Administrator,” allowing access to other members of the group that need it through his clearance. All requests for information access must be cleared through the DBA. Finally, Michael Woelkers will hold the positions of both the, “Data Analyst,” and, “Quality Assurance,” coordinator. Staff Costs Name Jahn Beavers Edward Klecha Raymond Plociniak Michael Woelkers Michael Woelkers Job Project Manager Database Administrator Programmer Quality Assurance Data Analyst Hourly Cost $75/hour $65/hour Projected Hours 320 320 Cost $24,000 $20,800 $55/hour $50/hour $50/hour 320 320 320 $17,600 $16,000 $16,000 4 April 16th 2010 Total Staff Costs $94,400.00 Software Costs Product Name Barracuda Off-site Backup SQL Server 2008 Oracle 11g Symantec Endpoint Protection 11 Cost Per Unit $50.00 per month Quantity 12 Cost $600.00 Free $12,000.00 $250.00 1 1 1 Free $12,000.00 $250.00 Total Software Costs $12,850.00 Equipment Costs Product Name HP ProLiant DL380 G6 Barracuda Backup Server 690 Cost Per Unit $2,500.00 $10,000.00 Quantity 1 1 Cost $2,500.00 $10,000.00 80GB Western Digital Hard Drive $40.00 2 $80.00 640GB Western Digital Hard Drive $80.00 3 $240.00 5 Total Equipment Costs $12,820.00 Project Total Cost $120,070.00 April 16th 2010 IV.) User Analysis Users The corporate leaders of Flix2You by now know what type of system works for them for their hierarchal structure. But from what our experience tells us, the only employees that should be touching the infrastructure of Flix2You’s database is the DBA and other trusted, well educated members of the team. Secretaries and others will be allowed to input new customers and what not but must honest the dignity of Flix2You as a company. In other words, there is to be no forging of illegal information. The only members that are allowed to change anything in the ERD must first go through the watchful eye of the DBA through reports and meetings to keep productivity moving forward and making sure every move is the right move as far as it goes with structure. For querying and data mining information for weekly and monthly reports, all the data is to be seen in a read-only format unless otherwise authorized by the Flix2You DBA. Database Views For viewing purposes and to keep order, a hierarchy will be set up and will not be broken unless the DBA supervises otherwise. This picture illustrates the basic structure to how the hierarchy works within the company excluding departments such as maintenance and the shipping department which will never get to see any information held within Flix2You’s database. This is a very simple diagram just to give an example of how the database viewing would work. 6 April 16th 2010 KEY – Any line connecting to another group goes from a top down approach so for instance the IT Members have to ask the DBA for passage into the database itself but the DBA does not have to ask the IT Members if he/she does not want to. DBA IT Members Receptionist and Non-IT Employees As far as it goes for maintenance and updating the database information, that would fall under any type of customer service or receptionist that works at Flix2You. We believe to keep those people at the places that they are best at so for instance we will not have someone that queries SQL taking names and personal information from a customer. Keep the employees at the positions they are best at and were hired to do. The DBA has almost all the power over everyone that works at Flix2You besides any CEO, CIO, or other corporate leaders within the business. The DBA should be able to help with any type of database problem he/she is having and if they can’t figure it out, our services will be available to them as well as his/her immediate IT staff. 7 April 16th 2010 As far as querying and data mining goes, that is IT and DBA territory but when it comes down to a database infrastructure change, a corporate decision is to be made to insure that the correct moves are being taken. V.) Organization of Data In response to difficulty querying and understanding the data in your current database, we have decided to take a, “Denormalized,” approach to our creation of your new database design. Our approach will place your many difficult-to-query tables into three bigger tables named MOVIE, RENTALS, and CUSTOMER_ACCOUNTS. This approach will make querying your new database very fast and easy. Movie PK movieID movietitle moviecast downloadable releaseyear rent_sale_both genre rentalrate saleprice Customer_Accounts PK accountID customerID creditnumber rentalsID accountStatus Rentals FK1 FK2 movieID rentalsID duedate We have included the SQL statements required to create the new tables: CREATE TABLE CUSTOMER_ACCOUNTS ( accountID Int NOT NULL, 8 April 16th 2010 firstname varchar(30) Not null, lastname varchar(30) not null, adress varchar(30) not null, city varchar(30) not null, stat char(2) not null, zip char(5) not null, creditnumber Char(16) NOT NULL, accountstatus varChar(10), CONSTRAINT accountPK PRIMARY KEY(accountID) ); CREATE TABLE RENTALS ( movieID Int NOT NULL, accountID Int NOT NULL, duedate Datetime ); CREATE TABLE MOVIES ( movieID Int NOT NULL, movietitle VarChar(15) NOT NULL, moviecast VarChar(15) NOT NULL, downloadable Char(1) NOT NULL, rent_sale_both Char(1) NOT NULL, genre Varchar(10) NOT NULL, rentalrate Money, salesprice Money, CONSTRAINT moviePK PRIMARY KEY(movieID) ); Along with the SQL required to populate the new tables with a set of sample data: ALTER TABLE RENTALS ADD CONSTRAINT movieFK FOREIGN KEY(movieID) REFERENCES MOVIES(movieID); ALTER TABLE RENTALS ADD CONSTRAINT accountFK FOREIGN KEY(accountID) REFERENCES CUSTOMER_ACCOUNTS(accountID); INSERT into CUSTOMER_ACCOUNTS(accountID, firstname, lastname, adress, city, stat, zip, creditnumber, accountstatus)values(1, 'Ed', 'Klecha', '2 cherry street', 'scranton', 'pa', '18515', '1234567890123456', 'good') INSERT into CUSTOMER_ACCOUNTS(accountID, firstname, lastname, adress, city, stat, zip, creditnumber, accountstatus)values(2, 'Joe', 'Shmoe', '5 cherry street', 'tobyhanna', 'pa', '18466', '1235467890123456', 'overdue') INSERT into CUSTOMER_ACCOUNTS(accountID, firstname, lastname, adress, city, stat, zip, creditnumber, accountstatus)values(3, 'Jahn', 'Beavers', '7 cherry lane', 'dickson city', 'pa', '18519', '1004567890123406', 'good') 9 April 16th 2010 Insert into MOVIES(movieID, movietitle, moviecast, downloadable, rent_sale_both, genre, rentalrate, salesprice) values (1, 'Big Daddy', 'Adam Sandler and Jon Stewart', 'y', 'b', 'Comedy', 5.00, 8.00) Insert into MOVIES(movieID, movietitle, moviecast, downloadable, rent_sale_both, genre, rentalrate, salesprice) values (2, 'Elf', 'Will Ferell and Zoey Daschenell', 'y', 'r', 'Comedy', 5.00) Insert into MOVIES(movieID, movietitle, moviecast, downloadable, rent_sale_both, genre, rentalrate) values (3, 'Rush Hour', 'Jackie Chan and Chris Tucker', 'n', 's', 'Action', 8.00) Insert into MOVIES(movieID, movietitle, moviecast, downloadable, rent_sale_both, genre, salesprice) values (4, 'Big Daddy', 'Adam Sandler, Jon Stewart, and some kid', 'y', 'b', 'Comedy', 5.00, 8.00) Insert into MOVIES(movieID, movietitle, moviecast, downloadable, rent_sale_both, genre, rentalrate, salesprice) values (5, 'Unforgiven', 'Clint Eastwood and Morgan Freeman', 'y', 'b', 'Western', 3.00, 5.50); Insert Insert Insert Insert Insert Insert Insert Insert Insert into into into into into into into into into RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, RENTALS(movieID, accountID, accountID, accountID, accountID, accountID, accountID, accountID, accountID, accountID, duedate) duedate) duedate) duedate) duedate) duedate) duedate) duedate) duedate) values values values values values values values values values (1, (1, (2, (2, (3, (4, (5, (3, (5, 1, 2, 2, 1, 3, 1, 1, 2, 3, 2010-04-20) 2010-04-25) 2010-04-20) 2010-05-02) 2010-04-21) 2010-04-23) 2010-04-22) 2010-04-26) 2010-04-20); The preceding SQL script can easily be changed to enter the actual data into your database. VI.) Database Administration In the Flix2You IT department a DBA will be chosen and that person will choose one or two individuals to be their subordinates. The head DBA will oversee all aspects of the database and his subordinates will continue to work partially in the IT department and oversee the server and occasionally be assigned tasks if the head DBA needs to distribute the workload. The head DBA will also need to run checks with Barracuda the backup and recovery company to make sure the files are being updated correctly. The DBA will be alerted when queries or reports aren’t being executed properly and will either handle it themselves or assign it to a subordinate. The DBA must be well versed in Oracle, SQL Server, and know how to maintain and monitor the server we are acquiring. Team Dwight has chosen to take the five positions necessary in this project in a hierarchy-style set up. The team consensus was that, a well structured team supported by a solid system of checks and balances would help the team flow better and increase the outcome of the Flix2You project. 10 April 16th 2010 Team roles and hierarchy goes as follows… A.) Project Manager – accountable for all timeframe slots, changing tasks and times as needed in an orderly manner while keeping the rest of the group informed about how much time is left for each task and the entire scope of where we are as a team. The project manager has direct access to all files in accordance with his duties, changing and alternating anything he sees fit. B.) Database Administrator – oversees the entirety of the project, pointing out spots for improvement when necessary. The DBA is held to keep in touch with all the other members of the group more so than anyone to keep everyone on point and focused on the project and its outcome. Motivation is key. The DBA has direct access to all files but is not allowed to alternate any files without consulting two or more members of the group (one needing to be the member in which his field is in question. In example, if the DBA wishes to change the amount of time spent on writing SQL statements, he must consult the Project Manager and then any other of the two members of the group). C.) Data Analyst – in charge of considering what company executive moves should be taken in following the data that has come through in the past. The data analyst will be a determining factor in where the company (Flix2You) is headed. The Data Analyst has direct access to all data files kept on record however, the information must be kept confidential for legal reason to avoid mishaps. D.) Quality Assurance – this position in the team must be in close contact with the Data Analyst (who is the same person) so that the data being extracted and used is being used properly in accordance to the wishes of the board of Flix2You. This position is so that the work that is being done is what is sought after so that the finished product will be to the best possible quality. Quality Assurance has direct admission to the data, however also keeping it secret. E.) Programmer – the Programmer for the Flix2You database will be writing the code so that the database exports the information in a well organized, neat, and speedy manner. The Programmer will be allowed to see the data files (keeping them confidential) in order to see what needs to be done however, will not be allowed to change any data without permission from the Data Analyst and DBA. Overall, the group is to keep in close contact with each other as much as possible, giving each member of the team the time and patience needed to finish the project to the best of our abilities. Flix2You will be given a copy of all of our work and immediately informed of any 11 April 16th 2010 changes in our plans or working patterns. Any accessing of un-specified files from one member to another must pass through the DBA. If DBA wants entrance into any files, two of the remaining three members must allow this in order for it to pass. Most importantly, all this information, about the subscribers of Flix2You as well as their database design is not to be discussed outside of Team Dwight to avoid any legal debacles. Data Backup and Recovery Data backup and recovery is one of the most important areas a company should invest time and resources into. Although most companies agree with this statement, it still remains as one of the most over looked design areas. Here at Dwight Enterprise we want to give you peace of mind that all of your valuable data is safe, secure, and prepared for the unforeseen. From our experience with backup solutions, Barracuda Networks Inc. is the way to go. Their system not only backups your data on sight via a server mounted system, but also backups your data to two off sight locations in two different geographical locations. This way you have your on site backup for quick recovery at local network speeds and the ability to fall back on the secure off site backups if the need every arises to use them as seen in Figure 1 below. Figure 1 The following is feature list pulled directly from Barracuda's website:Backup Solution The Barracuda Backup Service combines automatic local data backup via the Barracuda Backup Server with secure online backup to two redundant data centers in separate geographic locations. The Barracuda Backup Service copies data from any computer or storage platform and provides fast local storage and restores. The Barracuda Backup Service safely maintains backup data offsite using efficient replication techniques designed to conserve bandwidth and minimize the cost of disaster recovery. Other capabilities include: Automatic Backups. Administrators set the schedule for how often backups should run throughout the day. This eliminates the risks associated with manual backup. 12 April 16th 2010 File System Support. The Barracuda Backup Server supports a flexible range of connectivity options for backing up data from network file systems including CIFS (Windows), SSHFS (Mac and Linux/Unix) and NCP (Novell). Windows System Support. Backup agent software is included with the Barracuda Backup Service to capture System State backups of servers running Windows Server 2003 & 2008 (standard, enterprise and SBS editions), Windows Storage Server 2003, Windows Vista and Windows XP. Exchange Support. Backup agent software is included with the Barracuda Backup Service to backup Microsoft Exchange Server 2000, 2003 and 2007. Microsoft SQL Server Support. Backup agent software is included with the Barracuda Backup Service to backup Microsoft SQL Server 2000, 2005 and 2008. Full Local Backup. The Barracuda Backup Server offers sufficient storage for a complete copy of an organization’s current and historical data. Fast Local Restore. Administrators can restore data directly from the Barracuda Backup Server at local network speeds. This is the quickest way to recover lost data or recreate historical data. Secure, Redundant Replication. Multiple layers of encryption, including AES 256-bit, protect the integrity of data transferred offsite. Barracuda Networks’ two offsite data centers use highly redundant disk-based hardware in a fully encrypted and secure format. Alert Notifications. The Barracuda Backup Service automatically provides email alerts to administrators when service issues are detected. Notifications are sent when errors or file warnings are detected in backups or, when files are missing. Regulatory Compliance. The Barracuda Backup Service encompasses the security requirements to cover a wide range of industry-specific regulations, such as HIPAA for the healthcare industry, and Gramm-Leach-Bliley for financial organizations. 13 April 16th 2010 Data Access and Security In order to secure the database so that only people who have the correct login/password can access the data, we will be utilizing SSL (Secure Sockets Layer) in both the server and the client sides of the Flix2You website. SSL is the standard in securing web-systems and uses a 256-bit encryption (the strongest available). In addition, SSL is compatible with all commercial web browsers (Firefox, IE…). Legal Disclaimer We do not warrant that any of the software used and or licensed in connection with our watch now feature will be compatible with other third party software nor do we warrant that operation of our watch now feature and the associated software will not damage or disrupt other software or hardware. We reserve, in our sole and absolute discretion, the right to features entirely from the Flix2You service or to limit, condition, terminate, charge for or otherwise modify your use of our website at anytime without notice; provided however, we will give you notice before we institute any additional charges for the new or old features In response to requests from content providers, or due to technical limitations, or for any reason in our sole and absolute discretion, and without prior notice to you, some or all movies may not be viewed, or may cease being viewable, through the watch now feature on some or all personal computers. We are not responsible for any lost or stolen user information. You must be 18 years of age or older to become a member of the Flix2You service. While individuals under the age of 18 may use our service, they may do so only with the involvement of a parent or legal guardian. While Flix2You does distribute products that may be watched by children, we do not intentionally seek to collect information from individuals 13 years of age and younger. Unless otherwise specified, our DVD rental service and the content on the Flix2You website, including content viewed through our watch now feature, are for your personal and non-commercial use only and we grant you a limited license to access the Flix2You website for that purpose. You may not download (other than through page caching necessary for personal use), modify, copy, distribute, transmit, display, perform, reproduce, duplicate, publish, license, create derivative works from, or offer for sale any information contained on, or obtained from, 14 April 16th 2010 the Flix2You website, including but not limited to information contained within a member or members' Queue, without our express written consent. Flix2You does not promote, foster or condone the copying of DVDs, digitally delivered content, or any other infringing activity. You may not use any Meta tags or any other, "hidden text," utilizing the Flix2You name or trademarks without our express written consent. Any unauthorized use of the Flix2You website or its contents will terminate the limited license granted by us to you. Data Load Due to the increasing traffic your company experiences on your website, designing a plan to keep this new repository up to date is important. It is obvious that we do not want to bog down the website and give users an excuse to not visit and use Flix2You. To work around eating up too much bandwidth, we suggest a daily update on off-peak hours that will only take a few minutes. A possible schedule would be utilizing only 15% of the bandwidth for a few minutes every morning between the hours of 3 a.m. and 4 a.m. This will mostly eliminate any visible speed changes, experienced by users, on the Flix2You website. We, at Dwight Enterprise, believe this is the best approach to keep your new system running efficiently and keeping your customers satisfied and eager to return. Website Existing Database Off-peak hour updating (3am-4am) New Repository for Querying and Report Writing 15 New Repository April 16th 2010 V.) Accessing and Analyzing the Data accountIDName Action accountID Name 3 Jahn Beavers 2 Joe Shmoe 2 Joe Shmoe 2 Joe Shmoe 1 Ed Klecha 1 Ed Klecha 1 Ed Klecha 3 Jahn Beavers 1 Ed Klecha Comedy Western Above is an example of a simple report from the database that shows which movie genre is being watched by which customer. This is an example of how our new denormalized system can help push out faster queries. VI.) Legal Issues Privacy Statement As a part of our electronic company base, Flix2You may request some personal information that will be used in our database to monitor you, the user, to run Flix2You in the most efficient and effective way possible. Personal information requests include (but are not limited to): Name, login name, login password (for verification reasons), phone number, email address, financial information (for payment options), and age (for movie rating verification). The usage of your personal information is confidential and for our company’s eyes only. We, as a company are legally bound to a vow of silence and will not breach our silence to any company that is not Flix2You. We assure you that your information is in safe hands and we will go to full lengths to verify each user is that user and that user only. 16 April 16th 2010 Along with personal information, since our company is purely cloud-based, some computer information will be needed to transfer data files for the client’s viewing purposes. Honor and integrity is the name of our game. There will be no breaching of contract by any of our affiliates by any means. If there are any of our statements that are in question about our contract laws or integrity issues, please contact our, “legalsquad@flix2you.com .” Questions will be answered promptly and with our best knowledge possible at that time. Terms and Conditions of Usage If you agree to our company’s use of your personal information, you have come to the understanding that we, as a company, are in control and are subject to change any part of our policy as we see fit due to expansion of knowledge to better our company as a whole. At no time are we required to update your company of our policies and terms of use. However, a virtual update copy will be held online, at our website found here: http://www.dwightdatabase.com/policy. VII.) List of References Http://www.cdw.com/shop/search/results.aspx?wclss=S1&Brand=HP&key=DL380|G5&SortBy=MostRelevant&cm_mmc=acquirgy-_-Google-_-Server-_HP_DL380_G5_Server&AcquirgyID=12503024. Web. Kroenke, David, and David J. Auer. Database Processing: Fundamentals, Design, and Implementation. 11th ed. Boston: Prentice Hall, 2010. Print. Barracuda Networks / Spam & Virus Firewall / Web Filter / Web Application Firewall / Load Balancer / Email Archiver | BarraGuard.com. Web. 28 Mar. 2010. http://Barraguard.com 17 April 16th 2010 Hallock, Brian, Michael Wademan, George Stevens, and Chris Cunningham. Netixx Proposal Example. Tech. Print. Slangan, Rebecca, Nira Jailil, John Lover, Tim Van Doren, and Jeff Kondash. Proposal to NOMO Auto Group. Tech. Print. "Database 11g | Oracle Database 11g | Oracle." Oracle 11g, Siebel, Sun, PeopleSoft | Oracle, Software. Hardware. Complete. Web. 16 Apr. 2010. <http://www.oracle.com/us/products/database/index.html>. "Hhgregg Appliances & Electronics." Hhgregg.com Appliances & Electronics. Web. 16 Apr. 2010. <http://www.hhgregg.com/>. "Symantec - AntiVirus, Anti-Spyware, Endpoint Security, Backup, Storage Solutions." Symantec AntiVirus, Anti-Spyware, Endpoint Security, Backup, Storage Solutions. Web. 16 Apr. 2010. <http://www.symantec.com/index.jsp>. 18