Introduction to the course BTS330 Introduction to the course
Today What is BTS330? BTS330 Outline BTS330 Class Standards
Today What is BTS330? BTS330 Outline BTS330 Class Standards
Today What is BTS330? BTS330 Outline BTS330 Class Standards
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
How Businesses Work Types of Businesses: Retail Finance Insurance Manufacturing Marketing etc Look up: manufacture
How Businesses Work Business Areas The organizational areas needed to support a business. These can to equate to departments i.e. Accounting/Finance, Human Resources, Inventory, Sales An organizational structure is made up of executives, middle management, supervisory management and staff. Look up: Organizational structure Hierarchical Functional organization Informal organization Line organization Strategic business unit
How Businesses Work Organizational Roles to Support the Business: Operational staff Management
How Businesses Work Organizational Roles to Support the Business: Operational The individuals involved in the day to day processing of transactions I.e. Bank Tellers; Mutual Fund Sales People; Sales Associates; Inventory Control Clerks
How Businesses Work Organizational Roles to Support the Business: Management Executives (Top Management) Those that make strategic and day to day decisions Middle Management Those that make tactical and day to day decisions Lower Management Supervisory personnel who make day to day decisions
How Businesses Work The personnel in the organizational roles for each business area are the individuals who provide the information needed to understand what is required for development of automated computer systems.
Businesses Terminology Retail Inventory Control, Point of Sale Marketing Production, Advertising Banking Retail, merchant, branch, self-service Insurance Life, wholesale, liability Look up: Point of sale Inventory control
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
What is a system? A combination of hardware and software that meets the needs of a business. A collection of inter-related components that collect, process, store and provide as output the information needed to complete business tasks and to make business decisions.
What is a system? Characteristics of a system* It exists in an environment It is separated from its environment by some kind of boundary It has inputs and outputs which come from, or are sent to the environment It has interfaces (allows communication between two systems) It can have sub-systems (which are also systems) *Object-Oriented Systems Analysis & Design using UML, 1999 pages 5-6
What is a system? What the system does System Boundary Inputs Outputs Control Feedback Feed-forward How the system is controlled *Object-Oriented Systems Analysis & Design using UML, 1999 pages 5-6
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
Types of systems? Operational (Transaction Processing) Systems Take care of the day-to-day processing of the business: POS; Stock Trading; air line reservations, etc Information about the transactions that affect the organization are captured and recorded
Types of systems? Management Information Systems Uses operational systems’ information to give management the information needed to make management decisions Customer Support; Inventory Management, etc
Types of systems? Executive Information Systems Provide information to executives on how their company is doing relative to the industry
Types of systems? Decision Support Systems Systems that allow a user to explore the impact of available options or decisions ‘What if’ analysis
Types of systems? Expert Systems Simulate human reasoning and decision-making. Artificial Intelligence.
Types of systems? E-Commerce Systems Online browsing, sales and ordering
Types of systems? Gaming Systems Interactive Role playing
Types of systems? Office Systems Productivity tools available to employees on a desk top. Electronic Mail, Word Processing, Database Management, Spreadsheets, Desktop Publishing, Presentation Graphics and so on.
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
What is Software Development? Software Development is needed to turn manual processes into automated processes or to improve/enhance existing automated processes. (http://en.wikipedia.org/wiki/Software_development)
History of Software Development 1970s/1980s: Mainframe Centralized processing 1980s/1990s: MidRange Centralized/Distributed processing 1990s: Client/Server Data Warehousing (http://en.wikipedia.org/wiki/Data_warehousing) Distributed processing (http://en.wikipedia.org/wiki/Distributed_processing)
Software Development Approaches Summary of approaches: http://en.wikipedia.org/wiki/Software_development_process Structured Worked well for centralized processing applications Object Oriented Works for GUI and web solutions
Software Development Approaches Structured Based on the functions that a system needs to perform Development is rigid: does not allow for changes easily without significant impact to a project deadline Components do not tend to be reusable: solution developed is for a specific set of functions (which usually aren’t shared)
Software Development Approaches Object Oriented Based on the interaction that happens between ‘objects’ Considers the functions the system needs to perform, however - allows for reusability or sharing of code (a dialogue box construct is the same across applications) Focuses on object technology such as multimedia or graphical user interface systems
Typical IS applications Organizational Unit Responsible for Developing Information Systems IS Planning Level Type of planning Typical IS applications Organizational Unit Responsible for Developing Strategic Strategies in support of organizational long-term objectives Market and sales analysis, Product planning, Performance evaluation Senior Management/ Executives Tactical Policies in support of short-term goals and resource allocation Budget analysis, Salary forecasting, Inventory scheduling, Customer service Middle Management Operational Day-to-day staff activities and production support Payroll, Invoicing, Purchasing, Accounting Lower Management; Operational
Information Systems Need for software development: Environments are rapidly changing New technologies are frequently introduced Companies merge and need to combine their systems Government legislation
Software Development - Typical Solutions Developed in-house Software Package Outsourced
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
Systems Development Life Cycle Systems Development Life Cycle (SDLC) A methodology that organizes the activities of a project Followed by a Systems Analyst to do software development http://en.wikipedia.org/wiki/Software_development_process
System Development Life Cycle The system under development is refined and transformed through analysis, design, code and test phases – details are added in successive iterations (changes and improvements are introduced as needed) and incremental releases of software modules are delivered. System Design – Developing Information Systems Using UML by Leszek A. Maciaszek (page 5, 2001)
System Development Life Cycle Analysis (Requirements Gathering): Systems requirements are determined, defined and documented Looks at functions (at a high level) and the data that will be used Defines ‘what the system is to do’ Deliverables: Business Use Case Diagrams/Descriptions System Use Case Diagrams/Descriptions Activity Diagrams Initial User Interfaces (inputs and outputs) Casual Use Case Specifications (Scenarios) Domain Class Diagram
System Development Life Cycle Design: Architecture (what platform will the solution be developed on) Integrates the user interfaces with the data more clearly Defines ‘how the system will do it’ Deliverables: Class diagrams – Domain and Design More detailed user interfaces (inputs and outputs) More Detailed Scenarios Sequence diagrams
System Development Life Cycle Code and Test: Code and install system Define and create databases Defines ‘the system’ Deliverables: Program code and documentation Tested, working system
System Development Life Cycle Implementation: The working system is delivered Deliverables: Hardware Databases Data Converted Software installed Support processes implemented
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
Why Systems Courses? Software Development implies developing some software – but it isn’t just about coding programs Software Development entails understanding the problem to be solved, understanding how a business operates and understanding that the solution to be developed will be of value to the business The Systems stream of courses provide the knowledge of the steps that need to be followed to successfully create a software solution from the inception of the idea to a working, fully operational system
Today How Businesses Work What is a System Types of Systems Software Development Systems Development Life Cycle Systems Courses The Role of the Systems Analyst
Systems Analyst A business professional involved in the development of a computerized solution to a business problem – participates in a project team (http://en.wikipedia.org/wiki/Project_team) Requires extensive technical, business and people knowledge, communication, business and technical skills Is fundamentally curious to explore how things are done with a desire to make them work better
Systems Analyst Focuses on understanding the business problem Focuses on the approach to be taken to solve the business problem
Problem Solving Approach Research and understand the problem Verify that the benefits of solving the problem outweigh the costs Develop a set of possible solutions (alternatives) Decide which solution is best and make a recommendation Define the details of the chosen solution Develop and implement the solution Monitor to make sure that you obtain the desired results
Systems Analyst “Must thoroughly understand the problem the system will solve”
Systems Analyst Skills Technical Knowledge and Skills Business Knowledge and Skills People Knowledge and Skills Integrity & Ethics
Systems Analyst Skills Technical Knowledge and Skills Computers and how they work Devices that interact with computers, including input devices, storage devices, and output devices Communications networks that connect computers Databases and database management systems Programming languages Operating systems and utilities Tools and techniques for developing systems
Systems Analyst Skills Technical Knowledge and Skills Tools and techniques for developing systems Tools are software products that help develop analysis or design specifications and completed system components Microsoft Access, PowerBuilder for developing systems Integrated development environments (IDE’s) for specific programming languages (Java, C++) CASE tools to store information about system specifications (Rational Rose) Program code generators, testing tools, project management tools (to name a few)
Systems Analyst Skills Technical Knowledge and Skills Tools and techniques for developing systems Techniques are used to complete specific system development activities Project planning techniques Systems analysis techniques Systems design techniques System construction and implementation techniques System support techniques
Systems Analyst Skills Business Knowledge and Skills What the specific organization does What makes it successful What its strategies and plans are What are its traditions and values are
Systems Analyst Skills People Knowledge and Skills How people think How people learn How people react to change How people communicate How people work (in a variety of jobs and levels) Must be able to listen well
Typical Job Titles and Places of Employment Programmer analyst Business systems analyst System liaison End-user analyst Business consultant Business systems consultant Systems consultant System support analyst System designer Software engineer System architect