SAD-notes-1.pdf
Document Details
Uploaded by FreshSyntax
Full Transcript
SYSTEM ANALYSIS AND DESIGN Functional decomposition Week 2 dividing a system into smaller subsystems and components Systems Analysis...
SYSTEM ANALYSIS AND DESIGN Functional decomposition Week 2 dividing a system into smaller subsystems and components Systems Analysis COMPONENTS OF IS Process of understanding in detail what a system should accomplish. Customer Support System Hardware Systems Design Software specifying in detail how components of an People information system should be physically Data implemented Procedures prototype (GUI) Input Output Systems Analyst System Boundary Uses analysis and design techniques to solve business problems using information technology Manual part of the system A person Task completed by the people Systems analysis and design Automation Boundary systematic approach to identifying problems, Automated part of the system opportunities, and objectives; analyzing the Task completed by the computer information flows in organizations; and designing computerized information systems to solve a TYPES OF INFORMATION SYSTEM problem. TRANSACTION PROCESSING SYSTEM (TPS) You have to identify a problem Process 1 stage before having a project Capture and record information about Testing and deployment organization’s transactions It has phases and methodology (e.g., sales, payroll) MANAGEMENT INFORMATION SYSTEM (MIS) SOLVE BUSINESS PROBLEMS Take information captured by TPS System Produce reports for planning and control interrelated components functioning together to Uses data from TPS to generate reports that achieve an outcome aid in planning and control. Information systems DECISION SUPPORT SYSTEM/KNOWLEDGE-BASED SYSTEM (DSS/KBS) collection of interrelated components that collect, process, store, and provide as output information Explore impact of available options or needed to complete tasks decisions (what-if scenarios) Subsystem OFFICE AUTOMATION SYSTEMS AND KNOWLEDGE WORK SYSTEM (OAS/KWS) part of a larger system OAS support data workers Supersystem OAS supports data-related tasks (e.g., larger system that contains subsystems document management), KWS support professional workers KWS supports specialized professionals (e.g., engineers). ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS (AI/ES) ROLES OF THE SYSTEM ANALYST The general thrust of AI has been to develop Systems analyst as Consultant machines that behave intelligently. (AI seeks to Systems analyst as Supporting Expert make machines act intelligently) Systems analyst as Agent of Change ES effectively captures and uses the knowledge of a QUALITIES OF SYSTEM ANALYST human expert for solving a particular problem in an organization Problem-solver GROUP DECISION SUPPORT SYSTEM AND COMPUTER- Communicator SUPPORTED COLLABORATIVE WORK SYSTEMS Strong personal and professional ethics (GDSS/CSCWS) Self-disciplined and self-motivated as an individual GDSS intends to bring the group together to solve a problem (helps groups solve problems together) REQUIRED SKILLS OF TH SYSTEM ANALYST CSCWS include software support called Technical knowledge & skills groupware (facilitates collaboration.) Business knowledge & skills EXECUTIVE SUPPORT SYSTEM (ESS) People knowledge & skills Help executives organize their interactions with the WHAT KINDS OF PROBLEMS DOES AN ANALYST external environment TYPICALLY SOLVE? OTHER TYPES OF INFORMATION SYSTEM Customers want to order products any time of the day or night. (Enabling customers to place orders 24/7) Production needs to plan very carefully the amount of each type of product to produce each week. (Helping production plan weekly product output efficiently) Suppliers want to minimize their inventory holding costs by shipping parts used in the manufacturing process in smaller daily batches. (Assisting suppliers in reducing inventory costs by optimizing shipment sizes) Marketing wants to anticipate customer needs better by tracking purchasing patterns and buyer trends. (Supporting marketing in tracking purchasing patterns to anticipate customer needs) Management continually wants to know the Integrating Technologies for Systems current financial picture of the company, E-commerce and Web Systems including profit and loss, cash flow, and stock Enterprise Resource Planning Systems market forecasts. (Providing management Wireless Systems with real-time financial data for informed decision-making) Open Source Software Employees demand more flexibility in their benefits WEEK 3 programs, and management wants to build loyalty System Development Life Cycle and morale. (Addressing employee demands for flexible benefits while enhancing loyalty and systematic approach to solving business morale.) problems THE ANALYST AS A BUSINESS PROBLEM SOLVER 7 Phases of SDLC Has computer technology knowledge and Planning programming expertise Understands business problems Identifying Problems, opportunities, and Uses logical methods for solving problems objectives Has fundamental curiosity Analysis Wants to make things better Is more of a business problem solver than a technical Determining human information programmer requirement ANALYST’S APPROACH TO PROBLEM SOLVING Design Research and understand the problem Design and Prototyping Verify benefits of solving problem outweigh the costs Developers apply established software Define the requirements for solving the problem development patterns to solve algorithmic problems. Develop a set of possible solutions (alternatives) Decide which solution is best and recommend Development Define the details of the chosen solution Implement the solution Software development Monitor to ensure desired results Testing one of the most important in the software development life cycle, as there is no way to deliver high-quality software without testing. To measure quality includes: Code quality review Unit testing Integration testing Performance testing Security testing Implementation This stage must require maximum attention to detail. However, this phase is highly automated. It can be almost invisible because the software is deployed the moment it is ready. Maintenance The operations and maintenance phase is rather important too. The software development life cycle does not end with the software rollout. METHODOLOGIES, MODELS, TOOLS, AND TECHNIQUES IN Agile Modeling SYSTEM DEVELOPMENT combination of iterative and incremental Waterfall Method process models with a focus on process adaptability and customer satisfaction by First introduced by Dr. Winston W. Royce in a paper rapid delivery of working software product. published in 1970 Agile Methods break the product into small emphasizes that a logical progression of steps be incremental builds. These builds are provided taken throughout the software development life cycle in iterations. The agile method anticipates (SDLC), much like the cascading steps down an change and allows for much more flexibility incremental waterfall. than traditional methods. Spiral Method Methodologies combination of the iterative development process comprehensive guidelines to follow for model and sequential linear development model i.e. completing every SDLC activity. the waterfall model with a very high emphasis on risk It is a collection of models, tools, and analysis. techniques. It allows incremental releases of the product or incremental development of prototypes through each Models iteration around the spiral. representation of an important aspect of the Iterative Method real world, but not the same as the real thing. Abstraction is used to separate aspects, starts with a simple implementation of a small set of diagrams, and charts. Also uses in project the software requirements, and iteratively enhances planning and budgeting aids. the evolving versions until the complete system is implemented and ready to be deployed. Models Of System Components: does not attempt to start with a full specification of requirements. Instead, development begins by Flowchart specifying and implementing just part of the software, Data Flow Diagram (DFD) which is then reviewed to identify further Entity-relationship Diagram (ERD) requirements. Use Case Diagram Class Diagram Incremental Method Models Used to Manage the Development Process: process where requirements are broken down into multiple standalone modules of the software PERT Chart development cycle. Gantt Chart Incremental development is done in steps from Organizational Hierarchy Chart analysis design, implementation, testing/verification, Financial Analysis Models – NPV, ROI maintenance. Rapid Application Development Describes a method of software development that heavily emphasizes rapid prototyping and iterative delivery. The RAD model is, therefore, a sharp alternative to the typical waterfall development model, which often focuses largely on planning and sequential design practices. WEEK 4 - 5 PERT CHART/Program Evaluation Review Technique PROJECT MANAGEMENT a project management tool that provides a graphical representation of a project's process of planning and controlling the development timeline. breaks down the individual tasks of of a system within a specified time frame at a a project for analysis. minimum cost with the right functionality. project is a set of activities with a starting point and CONFIRMING PROJECT FEASIBILITY an ending point meant to create a system that brings value to the business. Risk Management ELEMENTS OF PROJECT MANAGEMENT process of identifying, assessing and controlling threats to an organization's capital 1. Project Initiation—defining the Problem and earnings. 2. Determining Project Feasibility 3. Activity Planning and Control Economic Feasibility 4. Project Scheduling 5. Managing Systems Analysis Team Members. kind of cost-benefit analysis of the examined project, which assesses whether it is possible PROJECT MANAGER to implement it. has the primary responsibility for managing the Organizational and Cultural Feasibility hundreds of tasks and roles that need to be carefully coordinated. focuses on how well a proposed information An actual profession system supposes the objective of the Business managers can make project management organization and its strategic plan for very difficult. an information system PROJECT INITIATION AND PLANNING Technological Feasibility Determine what are the problems in the organization established when the Company completed a detailed program design and has determined Determine what are the opportunities for improvement that a product can be produced to meet its design specifications, including functions, Defining the Problem features and technical performance requirements. Problem Statement Paragraph or two stating the problem or Schedule Feasibility opportunity. Issues degree to which a deadline for a strategy, Independent pieces pertaining to the problem or plan, project or process is realistic and opportunity. achievable. Objectives Goals that match the issues point-by-point. Resource Feasibility Requirements The things that must be accomplished along with the aspect looks at the resources that are possible solutions, and constraints, that limit the required to complete the project and development of the system. whether the amount of available resources are sufficient to complete the project effectively. WEEK 6 FLOWCHART Functional and Nonfunctional System Requirements A flowchart is a diagram that depicts a process, system or computer algorithm. Functional requirements A flowchart is simply a graphical representation of steps. Activities system must perform (use cases) It shows steps in sequential order and is Based on procedures and business functions widely used in presenting the flow of Documented in analysis models algorithms, workflow or processes. Shows the steps as boxes of various kinds, Nonfunctional requirements and their order by connecting them with arrows. Technical environment or performance objectives Usability, Flow Chart Symbols reliability and security requirements Techniques for Information Gathering Sampling Fact Finding Method Conduct Interviews and Discussions with Users Interviewing Arranging Questions Pyramid Structure Open with a specific question and close with a general one Used to warm up the interviewee Used for reluctant interviewees Funnel Structure Open with a general question and close with a specific one Easy, non-threatening way to start an interview Used when interviewee feels emotional about the topic Diamond-shaped Structure Uses a combination of the two approaches above Combines strengths of two approaches Takes longer Keeps interviewee’s interest by using a variety of questions Making a Record of the Interview Writing the Interview Report Observe and Document Business Process Make Sure Gathered Information is Correct WEEK 7 Attribute: TYPES OF MODELS data objects that either identify or describe entities (property of an entity). Mathematical It is a descriptor whose values are associated with individual entities of a specific entity formulas that describe technical aspects of the type system (i.e., reorder quantity) Relationship: Descriptive associations between entities. narrative memos, reports, or lists that describe indicated by a verb connecting two or more aspects of the system entities. Employees are assigned to projects Graphical Relationships should be classified in terms of cardinality. diagrams and schematic representations of some One-to-one, one-to-many, etc. aspects of the system Cardinality Use Case Diagram number of occurrences in one entity which An activity the system performs in response to a user are associated to the number of occurrences request in another. A “case” where the system is used by actor There are three basic cardinalities (degrees of relationship). one-to-one (1:1), one-to- Techniques for identifying use cases many (1:M), and many-to-many (M:N) Identify user goals Identifier Each goal at the elementary business process (EBP) level is a use case “Attributes that uniquely identify entity EBP – a task performed by one user, in one place in instances” response to a business event, that adds measurable Becomes a PK in RDS business value, and leaves system and data in Composite identifiers are identifiers that consistent state consist of two or more attributes Event decomposition technique Identifiers are represented by underlying the CRUD analysis technique (create, read, update, name of the attribute(s) Employee delete) (Employee_ID), student (Student_ID) Entity Relationship Diagram Crow’s Foot Notion shows the relationships of entity sets stored in a Known as IE notation (most popular) database. An entity in this context is an object, a Represented by a rectangle, with its name on component of data. the top. The name is singular (entity) rather The major activity of this phase is identifying entities, than plural (entities). attributes, and their relationships to construct models using the Entity Relationship Diagram. Entity -> table Attribute -> column Relationship -> line Entity instance: a single occurrence of an entity. WEEK 8 Three levels of detail: brief, intermediate, and fully developed description Object Oriented Requirement Model Many analysts prefer to write narrative Use Case Diagrams descriptions of use cases instead of drawing activity diagrams identify actors and their use cases (goals) Use Case Descriptions Use Case Description Components include details of a use case and how actors use the Use case name/scenario name system Actors/stakeholders Related use cases Systems Sequence Diagrams (SSDS) Preconditions – set of criteria that must be define inputs and outputs and sequence of true prior to initiation of the use case interactions between user and system for a use case Postconditions – set of criteria that must be true upon completion of the use case Activity Diagrams Flow of activities (steps in one column or Describe user and system activities for a use case two) Exception conditions State Machine Diagrams System Sequence Diagram (SSD) Describe states of each object type of UML 2.0 interaction diagram Used to model input and output messaging Use Case Scenario requirements for a use case or scenario Shows actor interacting with system Use Case Analysis Shows sequence of interactions as messages used to identify and define all business processes during flow of activities that system must support System is shown as one object: a “black box” Use Case SSD LIFELINES an activity a system carried out, usually in response to a user request Vertical line under object or actor CRUD – create, read/report, update, delete Shows passage of time If vertical line dashed Compares identified use cases with domain model Creation and destruction of things is not class diagram important for scenario Every class in class diagram must have use cases to Long narrow rectangles support creating, reading, reporting, updating, and Activation lifelines emphasize that object is deleting object instances active only during part of scenario Confirms system integration requirements Use Case Description Statement Machine Diagram provides details of preconditions, postconditions, State machine diagram is UML 2.0 diagram sequence of activities, and exception conditions in that models object states and transitions use case Complex problem domain classes can be Describes actor interacting with computer system modeled step-by-step to carry out business activity May have several scenarios for a use case, each a specific use case instance State of an object Rules for Developing State Machine Diagram A condition that occurs during its life when it satisfies Review domain class diagrams, select some criterion, performs some action, or waits for an important ones, and list all state and exit event conditions Each state has a unique name and is a semi- Begin building state machine diagram permanent condition or status fragments for each class Sequence fragments in correct order and Transition review for independent and concurrent The movement of an object from one state to paths another state Expand each transition with message event, guard-condition, and action-expression Review and test each state machine diagram State Machine Terminology Pseudo State the starting point of a state machine, indicated by a black dot Origin State the original state of an object from which the transition occurs Destination State the state to which an object moves after the completion of a transition Message Event the trigger for a transition, which causes the object to leave the origin state Guard Condition a true/false test to see whether a transition can fire Action Expression A description of the activities performed as part of a transition