Topic 1 Intro to SAD PDF
Document Details
Uploaded by Deleted User
UniKL
Ts. Elmy Nahida Othman
Tags
Summary
This document provides an introduction to systems analysis and design (SAD). It covers topic learning outcomes, fundamental systems development life cycles, the evolution of methodologies, and the roles and skills of systems analysts. Included are discussions on different methodologies like the waterfall approach, prototyping, and agile development, showcasing the key roles and steps involved.
Full Transcript
Topic 1: Introduction to Systems Analysis and Design by: Ts. Elmy Nahida Othman Senior Lecturer...
Topic 1: Introduction to Systems Analysis and Design by: Ts. Elmy Nahida Othman Senior Lecturer, Informatics ad Analytics Section UniKl MIIT Our Social Media More Information @unikl-miit https://www.unikl.edu.my Topic Learning Outcomes (TLO) Explain the fundamental systems development life cycle and its four phases Describe the evolution of systems development methodologies Review the different roles played by and the skills of a systems analyst System? Information system? what, who, when, why, where, how?? SYSTEM vs Information System WHAT IS SYSTEM DEVELOPMENT? Process of examining a business situation to improve it using better procedures and methods 2 major components: System Analysis Analysis of current system for Problems & Demerits in it and Additional requirements in new system System Design Process of planning new system which will replace the old one Beginning of a System Development System Development usually begins when a problem or opportunity is identified by managers, it can be because of any of the followings: New design idea to smoothen the process in the organization. Evolving environmental changes such as competition. Adding new business or product line to present business. Present system does not satisfy the users information needs. Present system no longer efficiently and effectively meets the goals of organization. Excessive time spent in correcting errors. Current Reports / Outputs not meeting users decision making skills. Escalating customer and vendor complaints. 6 Information System What is an information system (IS)? Hardware, software, data, System—Set of components people, and procedures that interact to achieve that work together to common goal produce quality information Businesses use many types of systems 7 Tools Software support that helps create models or other project components From simple drawing programs to complex CASE tools 8 Some Tools Project management applications Drawing/graphics applications Word processing/text editor Computer-aided system engineering (CASE) tools Integrated development environment (IDE) Database management applications Reverse-engineering tool Code generators 9 Techniques Collection of guidelines that help the analyst complete a system development activity or task Step-by-step instructions Strategic planning Project management User interviewing Data-modeling Relational database design 10 11 Methodology Defined as - manner, ways, routine Guideline to follow for completing every activity in the SDLC Writing code without a well-thought-out system request may work for small programs, but rarely works for large ones. 12 System Development Methodologies An approach to implement SDLC Methodologies may be based on business process or data ITD22303 Object Oriented System Analysis and Design 13 Structured Design Projects move methodically from one to the next step Generally, a step is finished before the next one begins ITD22303 Object Oriented System Analysis and Design 14 Structured - Waterfall Approach ITD22303 Object Oriented System Analysis and Design 15 Systems Development Life Cycle (Waterfall Model) Project Initiation and Planning Analysis Design Implementation Maintenance 16 Waterfall Model Problems dependent on documents, particularly in completing the requirements and design phases tendency to hide poorly understood requirements with elaborate specifications 17 Pros and Cons of the Waterfall Method Pros Cons Identifies systems Design must be requirements long specified on paper before programming before programming begins begins Long time between system proposal and delivery of new system 1 8 Prototyping Principle: a user can tell you better what they DON'T want than what they DO want Expendable (throw-away) prototyping: discarded after use used to support the analysis and design phases Evolutionary prototyping: prototype evolves into the final system Throw-away Prototyping Agile Development To focus the developers on the working conditions of the developers, the working software, the customers, and addressing changing requirements. Have few rules and practices, all of which are fairly easy to follow. Principles: ▪ Software is delivered early and continuously through the development process, satisfying the customer. ▪ Changing requirements are embraced regardless of when they occur in the development process. ▪ Working software is delivered frequently to the customer. ▪ Customers and developers work together to solve the business problem. ▪ Motivated individuals create solutions; provide them the tools and environment they need and trust them to deliver. ▪ Face-to-face communication within the development team is the most efficient and effective method of gathering requirements. Agile Development Principles: ▪ The primary measure of progress is working, executing software. ▪ Both customers and developers should work at a pace that is sustainable. That is, the level of work could be maintained indefinitely without any worker burnout. ▪ Agility is heightened through attention to both technical excellence and good design. ▪ Simplicity, the avoidance of unnecessary work, is essential. ▪ Self-organizing teams develop the best architectures, requirements, and designs. ▪ Development teams regularly reflect on how to improve their development processes. How To Select Appropriate Methodology ? 1. Clarity of User Requirements 2. Familiarity with the Technology 3. System Complexity 4. System Reliability 5. Short Time Schedule 6. Schedule Visibility 23 The System Development Life Cycle What are the phases of the system development cycle? Phase 2. Analysis ▪ Conduct preliminary investigation Phase 1. Planning ▪ Perform detailed analysis activities: ▪ Review project requests Phase 3. Design Study current system ▪ Acquire hardware ▪ Prioritize project Determine user requirements and software, if requests necessary Recommend solution ▪ Allocate resources ▪ Develop details of ▪ Identify project system development team Phase 5. Support Phase 4. Implementation ▪ Conduct post-implementation ▪ Develop programs, if necessary system review ▪ Install and test new system ▪ Identify errors and enhancements ▪ Train users ▪ Monitor system performance ▪ Convert to new system ITD22303 Object Oriented System Analysis and Design 24 What Are The Guidelines for System Development? The System Development Life Cycle Arrange tasks into phases (groups of activities) Involve users (anyone for whom system is being built) Develop clearly defined standards (procedures company expects employees to follow) 25 The System Development Life Cycle Who participates in the system development life cycle? 26 The System Development Life Cycle What is a systems analyst? Responsible for designing and developing information system Liaison between users and IT professionals 27 The System Development Life Cycle What is the project team? Formed to work on project from beginning to end Consists of users, systems analyst, and other IT professionals Project leader - one member of the team who manages and controls project budget and schedule ITD22303 Object Oriented System Analysis and Design 28 Planning Planning phase – WHY Information System should be built ? How project team going to build? 2 steps involved 1. Project Initiation ⚫ Technical feasibility Review by ⚫ Economic feasibility steering ⚫ Organizational feasibility committee 2. Once approved – project management Deliverable : Project plan 29 Analysis What is the analysis phase? Conduct preliminary Perform detailed investigation, also analysis called feasibility study 30 Analysis Team investigates, identify improvements & develop a new concept Analyze – WHO will use the system ? WHAT the system will do ? WHERE and WHEN it will be used ? 31 Analysis Involved 3 Steps 1. Analysis Strategy 2. Requirement gathering 3. System proposal Deliverable : System proposal 32 The System Development Life Cycle What is the preliminary investigation? Determine exact nature of problem or improvement and whether it is worth pursuing ▪ Findings are presented in feasibility report, also known as a feasibility study ITD22303 Object Oriented System Analysis and Design 33 The System Development Life Cycle What is detailed analysis? 1. Study how current system works 2. Determine user’s wants, needs, and requirements 3. Recommend solution Sometimes called logical design 34 The System Development Life Cycle What is the system proposal? Assesses feasibility of each alternative solution Presented to Recommend steering s the most committee, feasible which decides solution for how system will the project be developed 35 The System Development Life Cycle What are possible solutions? Horizontal market software - meets needs of Buy packaged software - prewritten many companies software available for purchase Write own custom software - Vertical market software developed at user’s software - designed for particular industry request Outsource - have outside source develop software 36 The System Development Life Cycle What is the design phase? Acquire hardware and software Develop all details of new or modified information system 37 Design Decides HOW the system will operate. Determine – hardware, software, network infrastructure, interface, database, reports etc. 38 Design Design phase has to set four steps: 1. Design Strategy 2. Basic design architecture 3. Database, file structure and specifications 4. Program design Deliverables : System specification 39 The System Development Life Cycle What is needed to acquire new hardware and software? Identify all hardware and software requirements of new or modified system Talk with other Surf Web systems analysts Read print and online Visit vendors’ stores trade journals, newspapers, and magazines 40 The System Development Life Cycle What is a detailed design? Detailed design specifications for components in proposed solution Includes several activities Database Input and Program design output design design 41 The System Development Life Cycle What is a mockup? Sample of input or output that contains actual data ITD22303 Object Oriented System Analysis and Design 42 The System Development Life Cycle What is a prototype? Working model of proposed system Beginning a prototype too early may lead to problems 43 The System Development Life Cycle What is computer-aided software engineering (CASE)? Software tools designed to support activities of system development cycle 44 The System Development Life Cycle What is the implementation phase? Purpose is to construct, or build, new or modified system and then deliver it to users Convert to new system Train users Install and test new system Develop programs 45 Implementation This is the final phase where system have been built is used 3 steps involved in this phase : 1. System construction – built and test 2. Installation – conversion, training 3. Establish support plan – review, identify major/minor changes 46 The System Development Life Cycle What is training? Showing users exactly how they will use new hardware and software in system 47 The System Development Life Cycle What is the support phase? Provides ongoing assistance after system is implemented Conduct post-implementation system review—meeting to find out if information system is performing according to expectations Identify errors Identify enhancements Monitor system performance 48 Project Team Roles 49 Required Skills of the Systems Analyst 50 Technical Knowledge and Skills Analysts should grasp many types of technology – how computers work, computer peripherals, network tech & protocols, DBMS, OOPL & Class libraries, OS & Utilities Analysts should be informed of tools (software products used to develop analysis and design specifications and system components) and techniques (strategies for completing specific system development activities) Common software tools: IDEs (Integrated Development Environments) and CASE (Computer Aided System Engineering) Common techniques : Project planning, Cost-benefit analysis, Architectural Analysis, Info gathering, Requirement Modeling, Database design, network configuration, Interface design, etc 51 Business Knowledge and Skills Analysts should understand: business function, organization structure, management, business nature (finance, marketing, manufacturing, customer service, retailing, etc) Reason : An analyst with deep understanding of a specific industry can solve complex problems for the companies in the industry. Best practice : be sure you understand the organization, its culture, its mission, its objectives before jumping to conclusion about the system solutions. 52 People Knowledge and Skills Critical for system analyst to understand how people think, learn, react to change, communicate, work. People knowledge used to adapt systems to users Most critical skill: ability to listen empathetically 53 Analyst Personal Integrity and Ethics Sense of personal integrity and ethics essential Analysts often encounter personal information – salary, health, job performance, students result Analysts encounter confidential proprietary information – strategic plans, top secret info, company’s security process Keep confidential and sensitive information private Improprieties can ruin an analyst’s career 54 Why do so many projects fail? Characteristics of failed projects Inaccurate understanding of end-user needs Inability to deal with changing environments Late discovery of serious project flaws Poor software quality Modules that do not fit together Unacceptable software performance These are just symptoms of deeper underlying problems ITD22303 Object Oriented System Analysis and Design 55 Thank You ITD22303 Object Oriented System Analysis and Design 56