acs2913 software requirements analysis and design · the university of winnipeg - acs 2913 - fall...

13
ACS2913 Software Requirements Analysis and Design Instructor: Victor Balogun OVERVIEW OF SYSTEMS ANALYSIS AND DESIGN THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1

Upload: others

Post on 24-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

ACS2913 Software Requirements Analysis and Design Instructor: Victor Balogun

OVERVIEW OF SYSTEMS ANALYSIS AND DESIGN

THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1

Page 2: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Lecture OverviewSoftware Development and Systems Analysis and Design

Systems Development Lifecycle

Iterative Development

Sample project: Developing RMO’s Tradeshow Systems

Introduction to Ridgeline Mountain Outfitters (From Textbook)

THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 2

Page 3: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Software Development and Systems Analysis and DesignWhen talking about software development, you can build:

Computer application(app) ◦ A computer software program that executes on a computing device to carry out a specific set of

functions

◦ Modest scope

◦ By definition, and application supports a specific task.

Information system◦ A set of interrelated components that collects, processes, stores, and provides as output the

information needed to complete business tasks

◦ Broader in scope than “app”

◦ Includes database and related manual processes

3

Page 4: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Software Development and Systems Analysis and DesignAnalysis and Design are important parts of what is known as the “Systems Development Lifecycle”

Systems analysis◦ Activities that enable a person to

understand and specify what an information system should accomplish

Systems design ◦ Activities that enable a person to define

and describe in detail the system that solves the need

Can a house be built without a plan and a blueprint?

4

Page 5: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Systems Analysis and DesignThere are methodologies that provide the tools and techniques to complete the development process:

◦ Understand the “business need”

◦ Capture the vision

◦ Define a solution

◦ Communicate the vision and the solution

◦ Build the solution (or direct others to build it)

◦ Launch the information system

5

Page 6: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Systems Development ProjectsProject: A planned undertaking that has a beginning and end and that produces some definite result

◦ Do you create a project every time that a new system is going to be developed?

◦ Requires knowledge of systems analysis and systems design tools and techniques

6

Page 7: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Systems Development LifecycleSDLC –the entire process consisting of all activities required to build, launch, and maintain an information system

We will identify 6 main activities for the SDLC

1. Identify the problem or need and obtain approval

2. Plan and monitor the project

3. Discover and understand the details of the problem or need

4. Design the system components that solve the problem or satisfy the need

5. Build, test, and integrate system components

6. Complete system tests and then deploy the solution

7

Page 8: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

SDLC (Cont’d)Information systems development process (or Methodology)

Set of comprehensive guidelines for carrying out the activities of the SDLC◦ Waterfall

◦ Spiral

◦ Prototyping..

Most processes/methodologies now use Agile and Iterative development

8

Page 9: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

SDLC (Cont’d)Agile development

◦ an information system development process that emphasizes flexibility to anticipate new requirements during development

◦ Fast on feet; responsive to change

Iterative development◦ an approach to system development in which the system is “grown” piece by piece through multiple

iterations

◦ Complete small part of system (mini-project), then repeat processes to refine and add more, then repeat to refine and add more, until done

9

Page 10: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Agile – Iterative DevelopmentAn iterative system development process that develops the system in “sprint” increments lasting from two weeks to two months

◦ Concentrates on maximizing the team’s ability to deliver quickly and respond to emerging requirements

Scrum: a method to keep the agile system development effort focused and moving quickly◦ The scrum master coordinates all activities

Extreme programming (XP) promotes incremental development of a system using short development cycles to:

◦ Improve productivity

◦ Accommodate new customer requirements

THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 10© 2018 Cengage Learning. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or otherwise on a password-protected website for classroom use.

Page 11: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

SDLC (Cont’d)Benefits of Iterative Development

◦ Core functions can be deployed in early iterations

◦ Newer technologies can be explored early on to avoid re-architecting system

11

Page 12: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

Iterative and Agile SDLC

12

Page 13: ACS2913 Software Requirements Analysis and Design · THE UNIVERSITY OF WINNIPEG - ACS 2913 - FALL 2019 1. Lecture Overview Software Development and Systems Analysis and Design Systems

SummaryThis course is about developing information systems that solve an organization need

System development involves 6 core processes, known as the SDLC

The course will elaborate on the basic concepts introduced in Chapter 1

Important terminology:◦ Computer application

◦ Information system

◦ Project

◦ Systems analysis

◦ System design

◦ System development lifecycle (SDLC)

◦ Information system development process (methodology)

◦ Agile development

◦ Iterative development

13