Mgt 20600: IT Management & Applications Software Tuesday September 20, 2005 Reminders Reading – For today Fundamentals text, Chapter Two, Software section – For next week Fundamentals text, Chapter Four, Telecommunications chapter Homework – Homework One Read questions carefully! Give more information for 1 pt. questions If you can’t find the answer in the book or web reference sites, then it’s a question you have to reason through – Homework Two Working out grading issues Will send email when grades have been posted – Homework Three Networks and Telecommunications Due Friday, September 30th Will be posted by Friday Next week: Networks Two weeks from now: Databases Three weeks from now: Exam (covers Overview of MIS, Hardware, Software) – 75 points – Mix of multiple choice, True/False, completion, short answer – Review Chapters One and Two material – Self-assessment quiz at the end of every chapter – Self-assessment quizzes on student site for text at course.com Lecture slides – Focus on slides that provide information and examples that the text doesn’t Homeworks One and Two material Overview of Software Computer programs: sequences of instructions Two Types – Systems software: coordinates the activities of hardware and programs – Application software: helps users solve particular problems Supporting Individual, Group, and Organizational Goals Sphere of influence: the scope of problems and opportunities addressed by a particular software application – Personal – Workgroup – Enterprise Software: Operating System When selecting an operating system, you must consider the current and future requirements for application software to meet the needs of the organization. In addition, your choice of a particular operating system must be consistent with your choice of hardware. Systems Software: Operating Systems Operating system (OS): set of programs that control the hardware and act as an interface with applications Common hardware functions – Get input (e.g., keyboard) – Retrieve data from disks and store data on disks – Display information on a monitor or printer Operating Systems Operating Systems User interface – Allows individuals to access and command the computer system – Command-based user interface: uses text commands – Graphical user interface (GUI): uses icons and menus to send commands to the computer system Operating Systems Hardware independence – Application program interface (API): allows applications to make use of the operating system Memory management – Control how memory is accessed and maximize available memory and storage Operating Systems Processing tasks – Multitasking: more than one program running at the same time – Time-sharing: more than one person using a computer system at the same time – Scalability: ability to handle an increasing number of concurrent users smoothly Networking capability: features that aid users in connecting to a computer network Operating Systems Access to system resources – Protection against unauthorized access – Logons and passwords File management – Ensures that files in secondary storage are Available when needed Protected from access by unauthorized users Current Operating Systems Linux: Personal Operating System Novell’s Linux Desktop 10 – Designed to go head-to-head against Windows – Includes Desktop operating system – Desktop search feature – Desktop note-taking technology OpenOffice.org Mozilla office productivity suite Firefox Instant-messaging client Open-source collaboration client F-Spot personal photo management application Technical support – Working with software vendors to develop more applications for Linux Linux: Workgroup and Enterprise Operating System Open source operating systems (Linux) – Increasing comfort level with this alternative – Dominates as server operating system – Why? Lower total cost of ownership Lower capital investment Greater reliability and uptime compared to commercial alternatives Greater flexibility and control Faster, cheaper application development Linux Example Industrial and Commercial Bank of China (ICBC) – China’s biggest bank – $640 billion in total assets – 100 million individuals as customers – 8.1 million corporate accounts Linux deployment – Plans to deploy Linux on servers across its network of 20,000 national branches – Will use Turbolinux Inc.’s Turbolinux 7 DataServer operating system – Will support front-end banking operations – 390,000 employees will be using terminals to access applications hosted on Linux servers on a daily basis Why Linux? – Chosen because existing applications (developed in-house) run on Unix – Easier to migrate applications to Linux than Windows – Need better software performance – Need better vendor support – Lower operating costs Application Software Gives users the ability to solve problems and perform specific tasks Interacts with systems software; systems software then directs the hardware to perform the tasks Software spheres of influence – – – – Personal Work group Enterprise Value Chain Personal Productivity Application Software Designed primarily for individual use Support individual productivity Major categories – Word processing – Spreadsheet – Database – Graphics Often purchased as suites of software Workgroup Application Software Workgroup application software: supports teamwork, whether people are in the same location or dispersed around the world Groupware: software that helps groups of people work together more efficiently and effectively Workgroup Software Workgroup software applications – Email – Instant messaging – Video conferencing – Application sharing – Whiteboards – Task scheduling – Centralized storage of group files – File version control Groupware Real-time – Web conferencing – Instant messaging – Support online meetings to work through issues, review plans Asynchronous – Online collaborative workspaces – E-mail – Allow collaborators to contribute on their own schedule Collaborative suites – – – – – Messaging Calendaring Document management Workflow automation Archives of discussions and document versions Groupware Technology Usage Rate Percentage of companies deploying* Interaction Richness Complexity of interaction possible Work Style Collaborators work simultaneousl y in real-time or individually in their own time Good for... Not good for... Important Issues E-Mail 98% Low Own time Sharing information with one or more parties Complex, multipartydiscussio ns or timesensitive messages Systems are interoperable; messages can get overlooked or lost; archives can be difficult to manage Web Conferencing such as WebEx or Microsoft Office Live Meeting (PlaceWare) 75% High Real-time Multiplelocation meetings, complex discussions and real-time decision making Document retention, audit trails Allows application and video sharing, and can integrate with teleconferenci ng Portals such as Plumtree 62% (Portals) 59% (Workspaces) High Own time, but some workspaces offer Web conferencing Shared access to documents, tools and experts; managing team interactions Real-time collaboration and quick decision making Can be difficult to implement across organizations 36% have sanctioned IM; another 19% report unauthorized IM usage Low Real-time Quick reaction to problems/issu es and answers to questions Complicated discussions among many people Some IM tools offer archiving; lack of system interoperabilit y; questionable security Tool Choice When supporting person-to-person or group-togroup collaboration, think about the complexity of the interaction and whether individuals or teams will be working together in real-time or on their own schedules Online Workspaces uch as s Microsoft SharePoint Instant Messaging Groupware Examples Aerospace industry – Next-generation jets designed by engineers working together from around the globe Proctor & Gamble – Collaborating researchers applied paper engineering know-how from the company’s paper towel business to its home-care group’s Swiffer mops Enterprise Application Software Software that benefits an entire organization Enterprise resource planning (ERP) software: programs that manage a company’s vital business operations for an entire multisite, global organization Enterprise Software Applications In an ERP suite, all of these applications would be software modules that you could buy separately or in combination ERP Example Rowe Furniture – Implemented SAP ERP modules to become more competitive with cheaper overseas rivals – Wanted to cut furniture delivery times to retailers from 45 days to 10 days by early 2006 – Replacing legacy third-party and homegrown systems that had reached the end of their useful lives – SAP applications installed in 2004 Human resources Payroll Production scheduling – SAP applications Rowe may install in the future Supply chain management Customer relationship management Customer portal – Software installation and transition have resulted in Lower production levels, backlog of orders, late shipments Weren’t using the software correctly – New software changed Way 5,500 wooden pieces that are assembled into frames were stored and handled Way demand is predicted Way inventory is logged Enterprise Software Example Supply Chain Example i2 Technology Inc. – One of the largest supply chain software vendors Because of globalization i2 customers demanding – – – – Greater scalability of applications Better integration with far-flung partners Centralized accurate data Ability to respond quickly to changes in demand i2 response – Extensive training services – Agile business platform Standardizing suite around Microsoft technology platform – End-users can access their SCM applications via Windowsbased desktop products, such as Excel Software Development Proprietary software: unique program for a specific application, usually developed and owned by a single company Off-the-shelf software: purchased software – Customized package Application Service Provider (ASP) Software Development Do not develop proprietary application software unless doing so will meet a compelling business need that can provide a competitive advantage. BUILD VS. BUY The basic arguments in the buy-vs.-build debate remain unchanged. WHY BUILD? Avoid painful vendor licensing terms Gain competitive advantage Adapt to new technology, such as grid computing WHY BUY? Leverage vendors’ economies of scale Gain broader integration capabilities Ensure that code knowledge won’t be lost Software Development Example Hyundai Information Service North America LLC – IT arm of Hyundai Motor America – Builds own software offshore – Why? More customization Small, unique applications No licensing annoyances – Example: switch from concurrent users to name seat licensing would have raised cost by $3,300 per user for a purchased application Application Service Providers Software service providers – Salesforce.com – Rearden Commerce – JRG Systems Will host – – – – Customer relationship management (CRM) systems Travel planning systems Supply chain management systems Many more Advantages – Quick – Easy – Relatively inexpensive Disadvantage – Won’t get 100% of the features you want or would get with a customized software package Software Development: Programming Languages Sets of keywords, symbols, and a system of rules for constructing statements Allow humans to communicate instructions to be executed by a computer Syntax: a set of rules associated with a programming language Different languages have characteristics that make them appropriate for particular types of applications Programming Language Evolution Software Development Choose a programming language whose functional characteristics are appropriate for the task at hand, taking into consideration the skills and experience of the programming staff. Software Development Rules to Live By Prepare three separate time and cost estimates based on past experience, software functionality and a formal estimating technique, and compare actual results with predictions Adopt a standard notation scheme and methodology for design and coding Automate control of the development process and link it to a project-management tool Use joint application design for requirements analysis Practice iterative development Institute a formal change-request process to prevent scope creep Establish centres of excellence-encourage the development of specialists in each development procedure Measure productivity and defect removal Employ component-based development Institute version control Design and test for usability Practice code inspections and walk-throughs