Lecture+Slides

Why might a company choose NOT to implement an IS?


 * The huge cost may outweigh any benefits that the product could offer.
 * It is very difficult to make people change their way of doing business. Some managers or employees are so comfortable with their current systems that they refuse to implement a new system because it would take time to learn.
 * They may not need an Information System for their business operations.

In-House vs. Outsourced In-House
 * Very expensive to keep full-time employees that have the talent required to complete the required tasks.

Outsourced
 * Cheaper
 * Companies lose control
 * Language barrier
 * Cultural barriers
 * Time zone differences (can be negative, but can also be beneficial because the project can be worked on 24 hours a day)
 * Miscommunication
 * Your project may become less important than another project that the outsourced company is working on. If this project was being worked on in-house, it would always be high priority and all time was dedicated to it.

In-between = freelance


 * Notes that are useful when doing the Business Analysis Consulting Project:**

__Data Modeling__ //Normative Model:// reduces complexity //Descriptive Model//: really good for selling concept of things but difficult to be recognized by information technologies
 * Internal consistency with a purpose
 * different models of how processes work in a business
 * with modeling: trying to see how it's done right now and in what ways you can improve on it
 * information technology is weak at task knowledge and organization; therefore, try to find the best model

__Data, Business and Presentation Layers__ 1. **data layer:** field of information necessary to have 2. **business logic:** is the layer that tries to make sense of it all and how everything relates (e.g. CRM has data of a customer but the logic of it includes how many times have they looked at the product, what they use the product for, etc) 3. **presentation layer:** indicates how to present all the information given by the business logic layer and figure out ways the data can be presented (i.e. accessibility of the data)
 * 3 important layers to understand given information:


 * note: never mess up any of these 3 layers*

__Data Flow Diagrams__
 * descriptive model of how data gets thrown around and how they are all linked
 * data flow diagrams are a good idea to sell the concept of your information and how data is moved, but not effective for programming (it makes everything confusing when trying to figure out bubbles to boxes)
 * every "bubble" has to be broken down a little bit further for further understanding

__Unified Modeling Language (UML)__
 * used as a way to formalize data structures

__UML 2.0 Activity Diagrams__
 * maps out flow of the information within a system
 * diagrams usually organized from top to bottom (swim lanes)

__XML__
 * extensible markup language
 * everything has to be exactly correct in XML
 * it is internally consistent but you have the right to define every tag that you use
 * it defines semantic links between information