Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
A database is a collection of data stored in a standard format designed to be shared by multiple users. Databases are one of the most important and useful tools available to management and information technology professionals. They provide the foundation for collecting, organizing, and sharing data across an organization. Virtually, every area of management uses a database management system (DBMS) – marketing professionals use databases to analyze sales data, human resource managers to evaluate employees, operations managers to track and improve quality, accountants to integrate data across the firm, and financial analysts to analyze a company’s performance. The database management approach provides several significant advantages over traditional programming techniques. Primary advantages include shorter development times, easier modification, better data integrity and security, and improved data sharing and integration. However, a DBMS is one of the most complex technology tools available. Databases have to be carefully designed to gain these advantages. A large-scale DBMS provides thousands of options and costs hundreds of thousands of dollars. It can take several months to learn all of the features of a particular DBMS. A DBMS (Database Management System) is a software that defines a database, stores the data, supports a query language, produces reports, and creates data entry screens. Some of the most challenging problems in building applications arise in storing and retrieving data. Problems include conserving space, retrieving data rapidly, sharing data with multiple users at the same time, and providing backup and recovery of data. Initially programmers had to solve these problems for every application they create. Today, the DBMS already provides some of the best solutions to these problems. Making the database the foundation of an application means that you get all of the powerful features and security without much additional work. Databases and Application Development In the last few years, database systems have become the foundation of almost all application development projects. From large enterprise relationship systems, to e-business, to stand-alone applications, database systems store and retrieve data efficiently, provide security, and make it easier to build the applications. Today, when you build or modify an application, you will first create the database. Phases in Application Development (Larger projects may require several people in each phase, while smaller projects might be created entirely by one or two developers.) 1. Feasibility. Define the project and provide estimates of the cost. 2. Analysis. Collect data definitions, forms, and reports from users. 3. Design. Use the collection made in the analysis to design the database and all the new forms, reports, and user interactions. 4. Development. Create the forms, reports, and application features such as help files. 5. Implementation. Transfer data, install, train, and review. Steps in Database Design 1. Identify business rules. 2. Define tables and relationships. 3. Create input forms and reports. 4. Combine as application for users. Business rules and processes are converted into database table and relationship definitions. Forms are defined that transfer data into the database, and reports use queries to retrieve and display data needed by users. These forms and reports along with features such as menus and help constitute applications. Users generally see only the application and not the underlying database or tables. Components of a Database Management System (The basic feature list is also useful when you have to evaluate the various products to determine which DBMS your company should use.) Database Engine. The heart of DBMS and is responsible for storing, retrieving, and updating the data. This component is the one that most affects the performance (speed) and the ability to handle large problems (scalability). Data Dictionary. It holds the definitions of all of the data tables and describes the type of data that is being stored, allows the DBMS to keep track of the data, and helps developers and users to find the data they need. The data dictionary determines which tables and columns should be used. Most modern database systems hold the data dictionary as a set of system tables. For example, Microsoft Access keeps a list of al the tables in a hidden system table called MsysObjects. Oracle includes several system tables that provide information from the data dictionary. Query Processor. A fundamental component of the DBMS that enables developers and users to store and retrieve data. In some cases the query processor is the only connection you will have with the database. Queries are derived from business questions. The query language is necessary because natural languages like English are too vague to trust with a query. To minimize communication problems and to make sure that the DBMS understands your question, you should use a query language that is more precise than English. The DBMS refers to the data dictionary to create a query. When the query is run, the query processor communicates with the database engine to retrieve the requested data. Report Writer. A component that enables you to set up the report on the screen to specify how items will be displayed or calculated. The report writer can be integrated into the DBMS, or it can be a stand-alone application that the developer uses to generate code to create the needed report. The design template sets the content and layout of the report. The developer creates a basic report design. This design is generally based on a query. When the report is executed, the report writer passes the query to the query processor, which communicates with the database engine to retrieve the desired rows of data. The report writer then formats the data according to the report template and creates the report complete with page numbers, headings, and footers. Forms Generator. A component that helps the developer create input forms. It enables developers to build forms by dragging and dropping items on the screen. A form is used to collect data. It is designed to match the tasks of the user, making it easy to enter data and loop up information. The query processor is used to obtain related data and fill in looked-up data in combo boxes. Application Generator. Consists of tools that assist the developer in creating complete application package. An application is a collection of forms and reports designed for a specific user task. It is the final package that you are trying to create. Communication and Integration. Utilities designed to store and use data in several databases running on different machines, even if they are in different locations. Modern operating systems and independent networks, including the Internet, have made it easier to connect databases running in different locations. Nonetheless, some systems do a better job of using these tools and support connections to share data globally. Security and Other Utilities. Utilities responsible for establishing and maintaining security access controls (e.g., identify the user and then provide or limit access to various parts of the database). Security is a complex issue with databases running on personal computers, because most personal computer operating systems have few controls. Various administrative utilities are provided by the DBMS. Common features include backup and recovery, user management, data storage evaluation, and performance-monitoring tools. Advantages of the Database Management System Approach 1. Minimization or control of data redundancy. 2. Data consistency. 3. Integration of data. 4. Sharing of data. 5. Enforcement of standards. 6. Ease of application development 7. Improved and uniform security, privacy, and integrity. 8. Data independence. The separation of data definition from the program. It enables you to change the data definition without altering the program and move data to new hardware or a completely different machine. No need to alter the forms, reports, or programs that use that data. Individual programs can be changed without having to change the data definition. Brief History of Database Management Systems Developers quickly realized that many business applications needed a common set of features for sharing data, and they began developing database management systems. They gradually refined their goals and improved their programming techniques. Many of the earlier database approaches still survive, partly because it is difficult to throw away applications that work. It is worth understanding some of the basic differences between these older methods. Hierarchical Databases The Hierarchical Database approach begins by claiming that business data often exhibits a hierarchical relationship. This logical database model organizes data in a treelike structure where a record is divided into segments that that are connected to each other in one-to-many parent-child relationship. It is relatively fast – as long as you only want to access the data from the top. The most serious problem related to data storage is the difficulty of searching for items in the bottom or middle of the hierarchy. For example, to find al of the customers who ordered a specific item, the database would have to inspect each customer, every order, and each item. (Pointer is a special type of data element attached to a record that shows the absolute or relative address of another record.) Network Databases The Network Database has nothing to do with physical networks (e.g., local area networks). Instead, the network model is named from the network of connections between data elements. This logical database model is a variation of the hierarchical data model that is useful for depicting many-to-many relationships. Databases can be translated from hierarchical to network and vice versa in order to optimize processing speed and convenience. The primary goal of the network model was to solve the hierarchical problem of searching for data from different perspectives. Although this approach seems to solve the search problems, the cost is high. All arrows must be physically implemented as indexes or embedded pointers. Essentially, an index duplicates every key data item in the associated data set and associates the item with a pointer to the storage location of the rest of the data. The problem with the network approach is that the indexes must be built before the user can ask a question. Consequently, the developer must anticipate every possible question that users might ask about the data. Worse, building and maintaining the indexes can require huge amounts of processor time and storage space. Relational Databases The Relational Database approach (originated by E.F. Codd in the 1970s) stored data in separate sets of data. The tables are not physically connected; instead, data is linked between columns. This type of logical database model treats data as if they were stored in two-dimensional tables. It can relate data stored in one table to data in another as long as the two tables share a common data element. For example, when retrieving an order, the database can match and retrieve the corresponding customer data based on CustomerID. Customer(CustomerId, Name, . . . Order(OrderID, CustomerID, OrderDate, . . . ItemsOrdered(OrderID, ItemID, Quantity, . . . Items(ItemID, Description, Price, . . . * Tuple. A row or record in a relational database. * Normalization is the process of creating small stable data structures from complex groups of data when designing a relational database. Objected-Oriented Databases An object-oriented (OO) database is a new and evolving method of organizing. This approach began as a new method to create programs. This approach to data management stores both data and the procedure acting on the data as objects that can be automatically retrieved and shared. The goal is to define objects that can be reused in many programs – thus saving time and reducing errors. The objects can contain multimedia. An object has three major components: a name, a set of properties or attributes, and a set of methods or functions. The properties describe the object, just as attributes describe an entity in the relational database. The “methods” are the true innovation of the OO approach. Methods are short programs that define the actions that each object can take. For example, the code to add a new customer would be stored with the customer object. The innovation is that these methods are stored with the object definition. Hypermedia Databases The hypermedia database approach to data management transcends some of the limitations of traditional database methods by organizing data as a network of nodes linked in any pattern established by the user. The nodes can contain text, graphics, sound, full-motion video, or executable programs. A feasibility study is a preliminary study undertaken before the real work of a project starts to ascertain the likelihood of the project's success. It is an analysis of possible alternative solutions to a problem and a recommendation on the best alternative. It, for example, can decide whether an order processing be carried out by a new system more efficiently than the previous one. Or, a preliminary study undertaken to assess whether a planned project is likely to be practical and successful and to estimate its cost. Or, the analysis of the viability of an idea. A feasibility study could be used to test a new working system, which could be used because: ♦ The current system may no longer suit its purpose, ♦ Technological advancement may have rendered the current system redundant, ♦ The business is expanding, allowing it to cope with extra work load, ♦ Customers are complaining about the speed and quality of work the business provides, ♦ Competitors are not winning a big enough market share due to an effective integration of a computerized system. Within a feasibility study, six areas must be reviewed, including those of Economics, Technical, Schedule, Organizational, Cultural, and Legal. Economic feasibility study This involves questions such as whether the firm can afford to build the system, whether its benefits should substantially exceed its costs, and whether the project has higher priority than other projects that might use the same resources. Technical feasibility study This involves questions such as whether the technology needed for the system exists, how difficult it will be to build, and whether the firm has enough experience using that technology. Schedule Feasibility study This involves questions such as how much time is available to build the new system, when it can be built (i.e. during holidays), interference with normal business operation, etc. Organizational Feasibility study This involves questions such as whether the system has enough support to be implemented successfully, whether it brings an excessive amount of change, and whether the organization is changing too rapidly to absorb it. Cultural Feasibility study In this stage, the project's alternatives are evaluated for their impact on the local and general culture. For example, environmental factors need to be considered. Legal Feasibility study Not necessarily last, but all projects must face legal scrutiny. When an organization either has legal council on staff or on retainer, such reviews are typically standard. However, any project may face legal issues after completion too. Source(s):http://en.wikipedia.org/wiki/feasibility... Possible Sources of Ideas for Information Systems 1. Users 2. Upper Management 3. Information System Analysts 4. Competitors, or firms in other industries Common Costs and Benefits from Introducing a DBMS (Benefits ca be hard to measure, especially for tactical and strategic decisions. But it is still important to list potential benefits. Even if you cannot assign a specific value, managers need to see the complete list) Costs Benefits Up-front/One-time Cost Savings Software Software maintenance Hardware Fewer errors Communications Less data maintenance Data conversion Less user training Studies and design training Increased Value Better access to data Ongoing Costs Personnel Better decisions Software upgrades Better communication Supplies More timely reports Support Faster reaction to change Software and hardware maintenance New products and services Strategic Advantages Lock out competitors. Management Requirements for Database Systems Much more is required for the development of database systems than simply selecting a logical database model. Indeed, this selection may be among the last decisions. The database is an organizational discipline, a method, rather than a tool or technology. It requires organizational and conceptual change. Without management support and understanding, database efforts fail. The critical elements in a database environment are: Data Administration. A special organizational function for managing the organization’s data resources, concerned with information policy, data planning, maintenance of data dictionaries, and data quality standards. The fundamental principle of data administration is that all data are the property of the organization as a whole. This requires the formulation of an information policy that specifies its rules for sharing, disseminating, acquiring, standardizing, classifying, and inventorying information throughout the organization. Information policy lays out specific procedures and accountabilities, specifying which organizational units share information; where information can be distributed; and who has responsibility for updating and maintaining the information. Data Planning and Modeling Methodology. The enterprise-wide planning for data where enterprise analysis is needed to develop database. This kind of analysis addresses the information requirements of the entire organization (as opposed to the requirements of individual applications) to identify the key entities, attributes, and relationships that constitute the organization’s data. Database Technology and Management. The more technical and operational aspects of managing data, including physical database design and maintenance. This defines and organizes database structure and content, develops security procedures to safeguard and the database, develops database documentation, and maintains the database management software. Users. The employees who are not computer specialists accessing large databases. It also includes trained computer specialists. Levels of Decision Making Strategic Decision Making. Determines the long-term objectives, resources, and policies of an organization. Management Control. Monitors how efficiently or effectively resources are utilized and how well operational units are performing. Knowledge-level Decision Making. Evaluates new ideas for products, services, ways to communicate new knowledge, and ways to distribute information throughout the organization. Operational Control. Decides how to carry out specific tasks specified by upper and middle management and establishes criteria for completion and resource allocation. Types of Decisions (according to Simon (1960)) Structured (programmed) Decisions. Decisions that are repetitive, routine, and involve a definite procedure for handling so that they do not have to be treated each time as if they were new. Unstructured (non-programmed) Decisions. Decisions in which the decision maker must provide judgment, evaluation, and insights into the problem definition. These decisions are novel, important, and non-routine, and there is no well-understood or agreed-upon procedure for making them. Semi-structured Decisions. Decisions where only part of the problem has a clear-cut answer provided by an accepted procedure. Stages of Decision Making Making decisions is not a single activity that takes place all at once. The process consists of several different activities that take place at different times. Intelligence. Collecting information to identify the problems occurring in the organization. It indicates why, where, and with what effects a situation occurs. Design. Conceiving of possible alternative solutions to a problem. This may require more intelligence so that the manager can decide if a particular solution is appropriate. Choice. Selecting among the various solution alternatives. Implementation. Putting the decision into effect and reporting on the progress of the solution. Individual Models of Decision Making Rational Model. Model of human behavior based on the belief that people, organizations, and nations engage in basically consistent, value-maximizing calculations or adaptations within certain constraints. Bound Rationality and Satisficing. The idea that people will avoid new uncertain alternatives and stick with tried-and-true rules and procedures. Satisficing is choosing the first available alternative in order to move closer toward the ultimate goal instead of searching for all alternatives and consequences. Muddling Through. The method that involves successive limited comparisons where the test of a good decision is whether people agree on it. Incremental Decision Making. Choosing policies most like the previous policy. Psychological Type and Frames of Reference. i. Cognitive Style describes underlying disposition toward the treatment of information, selection of alternatives, and evaluation of consequences. 1. Systematic Decision Makers. Cognitive Style that describes people who approach a problem by structuring it in terms of some formal method. 2. Intuitive Decision Makers. Cognitive style that describes people who approach a problem with multiple methods in an unstructured manner, using trial and error to find a solution. Organization Models of Decision Making. Models of decision making that take into account the structural and political characteristics of an organization. BureaucraticModels. Models where decisions are shaped by the organization’s standard operating procedures (SOPs) Political Models. Models where decisions result from competition and bargaining among the organization’s interest groups and key leaders. “Garbage Can” Model. A model that states organizations are not rational and decisions are solutions that become attached to problems for accidental reasons. Database Design and the Unified Modeling Language For several years, entity-relationship (ER) diagrams were the predominant modeling technique for database design. However, this approach causes problems for instructors (and students) because there are several different diagramming techniques. An entity-relationship diagram is a methodology for documenting databases illustrating the relationship between various entities in the database. Unified modeling language (UML) class diagrams, although very similar to ER diagrams, are superior in several ways. They: are standardized, so students (and instructors) need learn only one set of notations; are “cleaner” in the sense that they are easier to read without bubbles and cryptic notations of traditional ER diagrams; provide an introduction to object-oriented design, so students will be better prepared to move into future jobs; and prepare students to move into future jobs with their rapid adoption. The basic similarities between ER and class diagrams are (1) entities (classes) are drawn as boxes, (2) binary relationships (associations) are drawn as connecting lines, and (3) n-ary associations (relationships) are drawn as diamonds. Hence, the overall structure are similar. The main difference between UML and ER diagrams occur in the details. In UML the multiplicity of an association is shown as simple numerical notation instead of cryptic icon. i i Extracted from Database Management Systems International 3 rd Edition ©2005 by Gerald V. Post