Podcast
Questions and Answers
What is the primary role of a systems analyst within an organization?
What is the primary role of a systems analyst within an organization?
Which decade marked a shift to a more disciplined approach to systems development, similar to engineering?
Which decade marked a shift to a more disciplined approach to systems development, similar to engineering?
What was the main emphasis of systems analysis and design in the 1950s?
What was the main emphasis of systems analysis and design in the 1950s?
What type of software is specifically designed to support an organizational function or process?
What type of software is specifically designed to support an organizational function or process?
Signup and view all the answers
Which of the following best describes the systems development life cycle (SDLC)?
Which of the following best describes the systems development life cycle (SDLC)?
Signup and view all the answers
Signup and view all the answers
Study Notes
Modern Systems Analysis and Design
- Modern Systems Analysis and Design is a complex process used by business and systems professionals to create and maintain information systems.
- Application software is designed to support organizational functions or processes.
- A systems analyst is an organizational role responsible for the analysis and design of information systems.
- The figure shows an organizational Systems Analysis and Design approach is driven by methodologies, techniques, and tools.
- The 1950s focused on processing efficiency and automating existing processes, using the machine or assembly languages.
- The 1960s saw the introduction of procedural languages and smaller, faster, less expensive computers.
- The 1970s moved towards more disciplined systems development, shifting from a process-first to a data-first approach.
- The 1980s saw major breakthroughs, microcomputers becoming key tools, and the development of off-the-shelf software and 4th generation languages, instructing computers.
- The 1990s focused on system integration with visual programming environments (like Visual Basic), relational and object-oriented databases, and enterprise-wide systems being developed along with web and internet applications.
- Today the focus is on internet & intranet and extranet systems, involving three-tiered design.
Systems Development Methodology
- Systems development methodology is a standard process that includes steps for analyzing, designing, implementing, and maintaining information systems within an organization.
- The Systems Development Life Cycle (SDLC) is a traditional methodology used for developing, maintaining, and replacing information systems.
- The SDLC includes several phases that represent progress in the systems analysis and design efforts.
Systems Development Life Cycle (SDLC)
- Figure 1-2 shows a circular process with the SDLC phases linked together.
- The SDLC is an iterative process, where phases can iterate through one another.
- At any given phase, the project can return to a previous phase.
- The figure 1-3 shows an evolutionary model, which cycles through phases at different levels, showing that these are not fixed steps.
Phases of SDLC
- Planning: Identifying a need for a new or enhanced system, analyzing, prioritizing, determining scope, and creating a baseline project plan.
- Analysis: Studying system requirements from user input, evaluating current systems (manual and computerized), and recommending alternate solutions.
-
Design: Converting the alternate solution into logical and physical specifications.
- Logical Design: Creates a design independent of specific hardware/software.
- Physical Design: Transforms logical specifications into technology-specific details for implementation, including choices of language, database, and platform.
- Implementation: Coding, testing, installing, and supporting the system within the organization.
- Maintenance: Repairing and improving the system based on evolving user needs and maintaining it.
Products of SDLC Phases
- Table 1-1 details products, outputs, or deliverables for each SDLC phase.
- Planning includes priorities for systems, architecture, and information system management.
- Analysis includes descriptions of current and alternative systems and justifications.
- Design includes functional and technical specifications for system elements (data, processes, inputs, outputs, programs, files, network, and software).
- Implementation produces code, documentation, training procedures, and support.
- Maintenance includes new software versions/releases with updated documentation, training, and support.
Heart of Systems Development
- The location of activities and step sequencing greatly vary between different projects; this is shown in Figure 1-6.
- Current practice often combines analysis, design, and implementation into one process.
- Another name for this process is the analysis-design-code-test loop. This is in Figure 1-6
Traditional Waterfall SDLC
- Figure 1-7 shows that after a phase ends, another begins, like a waterfall cascading through the steps.
- Each step needs to be completed before going onto the next.
- This makes it difficult to go back and make changes.
- Expense is significant when making changes.
- The role of users or customers is limited.
- Deadlines are often a main priority for companies.
Agile Methodologies
- Agile methodologies, drawn from engineering, aren't always adequate for real-world software development.
- Agile methodologies prioritize adaptive approaches, emphasizing people and self-adaptive processes.
- Agile is not suitable for every project; Fowler recommends it when requirements are dynamic, developers are motivated, & customers are involved.
Agile Manifesto
- Seventeen anarchists developed the Agile Manifesto.
- The manifesto presents values of individuals and interactions, working software, customer collaboration, responding to change, process and tools, documentation, customer collaboration and contract negotiation, for agile software development.
- The manifesto prioritizes customer satisfaction through early and continuous delivery of valuable software, welcomes changing requirements, and delivers working software frequently.
- Additional aspects are building projects in motivated individuals and effective information conveyance through face-to-face communication in addition to emphasizing working software as the primary progress measurement.
- Additional principles include continuous attention to technical excellence, sustainable development, and optimizing work not done. The best architectures emerge from self-organizing teams; these reflect on and adjust to become more effective at regular intervals.
eXtreme Programming
- eXtreme Programming (XP) employs short, incremental development cycles, emphasizing automated tests, two-person programming teams, and customer monitoring.
- It integrates planning, analysis, design, and construction into a single phase.
- It uses a unique method to capture and present system requirements and design specifications.
- Coding and testing are considered related parts of the same process, leading to increased developer communications, productivity, and high-quality code. This also reinforces other XP practices.
Scrum
- Scrum, originating in 1995, is a popular agile methodology used by 87% of companies.
- It involves Scrum teams with associated roles, events, and artifacts.
- Roles include product owner, development team, and Scrum master.
- The primary unit is the sprint, typically lasting two weeks to a month, involving planning meetings, daily stand-up meetings for progress evaluation, sprint reviews, and sprint retrospectives for improvement.
- Three primary artifacts are the Product Backlog, Sprint Backlog, and Increment.
Agile in Practice
- Agile development provides flexibility to programmers and managers in creating systems within time and cost allowances.
- Implementing agile can be challenging due to organizational needs and change resistance.
- Companies often combine agile and waterfall approaches.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
This quiz covers the essential aspects of Modern Systems Analysis and Design, a crucial process for creating and managing information systems. It explores the evolution of methodologies, languages, and the role of systems analysts from the 1950s to the 1980s. Test your knowledge on how these developments have influenced organizational functions and software applications.