You are on page 1of 53

Adapted or modified by the SA&D Team Semester 1, 2022-2023

 Understand the need for systems analysis and design in


organizations.
 Realize what the many roles of the systems analyst are.
 Demonstrate phases in the systems development life cycle
(SDLC)
 Understand the roots of agile modeling in prototyping and the
four main types of prototyping. Be able to use prototyping for
human information requirements gathering.
 Comprehend the fundamentals of three development
methodologies:
 SDLC
 Object-oriented Systems Analysis and Design
 The Agile approach

 Understand how to improve efficiency for users who are knowledge


workers using either structured methods or agile modeling.
2
 Need for Systems Analysis and Design
 Roles of systems analysts Image Source: Google

 Phases in the systems development life cycle (SDLC)


as they relate to Human-Computer Interaction (HCI)
factors
 Prototyping for human information requirements
gathering
 Fundamentals of three system development
methodologies
 Open Source Software

3
 Fuels business and can be the critical factor in
determining the success or failure of a business
 Needs to be managed correctly
 Managing computer-generated information differs from
handling manually produced data

Image Source: https://www.righttoinformation.wiki/explanations/information


4
 Installing a system without proper planning leads to
great user dissatisfaction and frequently causes the
system to fall into disuse
 Lends structure to the analysis and design of
information systems
 A series of processes systematically undertaken to
improve a business through the use of computerized
information systems

5
Question
List the advantages of using systems
analysis and design techniques in
approaching computerized
information systems for business.

6
 The analyst must be able to work with people of all
descriptions and be experienced in working with
computers

Three • Consultant
primary • Supporting expert
roles: • Agent of change

7
Problem Communicator
solver

Strong
Self-
personal
disciplined
and
and self-
professional
motivated
ethics

8
Class Activity
 Find examples of people or yourself who
use systems.
 List the systems, the position titles of the
users, and the business functions that the
systems support.

9
 The systems development life cycle is a phased approach to
solving business problems.
 Developed through the use of a specific cycle of analyst and
user activities. Consists of seven phases, each phase has
unique user activities

10
 The demand for analysts who are capable of
incorporating HCI into the systems development process
keeps increasing, as companies begin to realize that the
quality of systems and the quality of work life can be
improved by taking a human-centered approach at the
outset of a project
 HCI is that aspect of a computer that enables
communications and interactions between human and
computer.
 Implementing HCI into SDLC implies emphasizing people
rather than the work to be done or the IT that is
involved.

11
 Critical to the success of the rest of the project, because
no one wants to waste time addressing the wrong problem.

Problems
• generally the reason the analyst was called in in the
first place.

Opportunities
• situations that the analyst believes can be improved
through the use of computerized information systems.

Objectives
• how can the business reach its objectives by
addressing specific problems or opportunities.
12
Output
Activity

- Interviewing user Feasibility report


management containing problem
- Summarizing the definition and
knowledge obtained objective summaries
from which
- Estimating the management can
scope of the project make a decision on
- Documenting the whether to proceed
results with the proposed
project

13
 Determining human needs of the users involved.
 Uses activities to pose and answer questions concerning
human-computer interaction:
 What are the users strengths and limitations?

WHO • the people who are involved

WHAT • the business activity


Trying to
understand what
information
WHERE • the environment in which the work
takes place

users need to
perform their jobs. WHEN • the timing

HOW • how the current procedures are


performed

WHY • why the system uses the current


system
14
Activity Output
• The analyst understands how
 Interviewing users accomplish their work
 Sampling and investing hard when interacting with a
data computer
 Questionnaires • Begin to know how to make
the new system more useful
 Observe the decision and usable
maker’s behavior and
environment • Know the business functions

 Prototyping • Have complete information on


the:
 Learn the who, what, where, • People
when, how, and why of the • Goals
current system
• Data
• Procedures involved
15
Activity
Create data flow, Analyze the Prepare and
Complete the data
activity, or structured decisions present the system
dictionary
sequence diagrams made proposal

Output
Recommendation on what, if anything, should be done

16
 Uses the information collected earlier to accomplish the logical
design of the information system

Activity Output

• Design procedures for data entry Model of the actual


• Design the human-computer interface system
• Design system controls
• Design database and/or files
• Design backup procedures 17
Activity
• System analyst works with programmers to
develop any original software
• Works with users to develop effective
documentation
• Programmers design, code, and remove
syntactical errors from computer programs
• Document software with help files, procedure
manuals, and Web sites with Frequently Asked
Questions (FAQs)

Output
• Computer programs
• System
documentation

18
 Testing should take place first with sample data and then with
actual data.
 Testing is done by both the programmers and the analyst.
 The maintenance started here is carried out routinely through
the life of the system.
• updates may be performed via a vendor site on the Web.

•Test the information


system
•System maintenance Output
•Maintenance
documentation •Problems, if any
•Updated programs
Activity •Documentation

19
Activity
Output
Train users
Analyst plans smooth Trained personnel
conversion from old Installed system
system to new system
Review and evaluate
system

20
Systems
Maintenance

21
 Maintenance is performed for two reasons:
 Removing software errors
 Enhancing existing software

 Over time, the cost of continued maintenance will be


greater than that of creating an entirely new system. At
that point, it becomes more feasible to perform a new
systems study.

Resource consumption over the system life

22
Question
What are the reasons for enhancing
existing system?

23
 Agile modeling is a collection of innovative, user-
centered approaches to system development
 Prototyping is an information-gathering technique
useful in seeking
 User reactions
 Suggestions
 Innovations
 Revision plans

Image Source: User experience design,


Illustration by Claire Murray

24
Four kinds of
prototypes
• Patched-up
• Nonoperational
• First-of-a-series
• Selected features

25
Patched-Up Prototype Non Operational Scale Models
 A system that works but is  A nonworking scale model that is
patched up or patched set up to test certain aspects of
together the design
 A working model that has all  A nonworking scale model of an
the features but is inefficient information system might be
produced when the coding
 Users can interact with the
required by the application is
system too expensive to prototype but
 Retrieval and storage of when a useful idea of the
information may be system can be gained through
inefficient prototyping of the input and
output only.

26
First-of-a-Series Prototype Selected Features Prototype
 Creating a pilot  Building an operational model
that includes some, but not all,
 Prototype is completely
of the features that the final
operational system will have
 Useful when many
 Some, but not all, essential
installations of the same features are included
information system are
planned  Built in modules
 A full-scale prototype is  Part of the actual system
installed in one or two
locations first, and if
successful, duplicates are
installed at all locations
based on customer usage
patterns and other key
factors
27
• Two main problems with the System Development
Life Cycle (SDLC)
Prototyping as an • Extended time required to go through the
alternative to the development life cycle
SDLC • User requirements change over time
• Rather than using prototyping to replace the
SDLC use prototyping as a part of the SDLC

• Drawbacks include prematurely shaping a system


Drawbacks to before the problem or opportunity is thoroughly
understood
Supplanting the • Using prototyping as an alternative may result in
SDLC with producing a system that is accepted by specific
Prototyping groups of users but is inadequate for overall
system needs

28
Prototyping is a superb way
to elicit feedback about the
proposed system and about Work in Build the
how readily it is fulfilling the manageable prototype
modules rapidly
information needs of its
users.

The first step of prototyping Stress the


Modify the
prototype in
is to estimate the costs user
successive
interface
involved in building a module iterations
of the system.

29
 It is imperative that an analyst work in manageable
modules
 One distinct advantage of prototyping is that it is not
necessary or desirable to build an entire working system
for prototype purposes
 A manageable module allows users to interact with its
key features but can be built separately from other
system modules
 Module features that are deemed less important are
purposely left out of the initial prototype

30
 Speed is essential for successful prototyping
 Analysts can use prototyping to shorten this gap by using
traditional information-gathering techniques to find
information requirements
 Make decisions that bring forth a working model
 Putting together an operational prototype rapidly and
early in the SDLC allows an analyst to gain insight about
the remainder of the project
 Showing users early in the process how parts of the
system actually perform guards against overcommitting
resources to a project that may eventually become
unworkable

31
 Making a prototype modifiable means creating it in
modules that are not highly interdependent
 The prototype is usually modified several times
 Changes should move the system closer to what users say
is important
 Each modification is followed by an evaluation by users

32
 Use the prototype is to get users to further articulate
their information requirements
 They should be able to see how the prototype will
enable them to accomplish their tasks
 The user interface must be well developed enough to
enable users to pick up the system quickly
 Online, interactive systems using GUI interfaces are
ideally suited to prototypes
 Sometimes the quickest way to prototype is through the
modular installation of COTS software. Some COTS
software is elaborate and expensive, but highly useful.
 Example: Catholic University’s use of the ERP COTS software package
called PeopleSoft, which is handling many of its web-based functions.
33
Potential for changing the system early in its
development

Advantages of Opportunity to stop development on a


Prototyping system that is not working

Possibility of developing a system that more


closely addresses users’ needs and
expectations

It can be difficult to manage prototyping as a


project in the larger systems effort
Disadvantages
of Prototyping
Users and analysts may adopt a prototype as
a completed system
34
 Honest involvement
 Experimenting with the
prototype
 Giving open reactions to
the prototype
 Suggesting additions to or
deletions from the
prototype

Example of a prototype evaluation form

Image Source: User experience design, 35


Illustration by Claire Murray
 Structured Analysis and Design together with the
Systems Development Life Cycle (SDLC)
 Traditional approach
 Using CASE tools approach

 Object-oriented Systems Analysis and Design


 The Agile approach or Agile modeling

Image source: https://www.udemy.com/course/your- 36


complete-guide-to-agile-scrum-kanban/
 CASE tools are productivity tools for systems
analysts that have been created explicitly to
improve their routine work through the use
of automated support

 any tool used to automate some activity


associated with system or software
development which includes web
development, mobile application
development, e-commerce development etc.
 Real CASE tools can be categorized into 3
following levels:
 Upper — support analysis and design phases
 Lower — support coding phase
 Integrated — also known as I-CASE support
analysis, design and coding phases

37
• Increasing analyst productivity • automates the drawing and
modifying of diagrams
• automates the sharing of work thus
reducing the time to collaborate
with group members
• facilitates interaction among team
members by making diagramming a
dynamic, interactive process
• Improving analyst-user • CASE tools foster greater, more
communication meaningful communication among
users and analysts.
• Integrating life cycle activities • integration of activities through the
underlying use of technologies makes
it easier for users to understand how
all the life cycle phases are
interrelated and interdependent.
• Accurately assessing maintenance • enable users to analyze and assess
changes the impact of maintenance changes.
38
 Alternate approach to the structured approach of the
SDLC that is intended to facilitate the development
of systems that change rapidly in response to
dynamic business environments
 Analysis is performed on a small part of the system
followed by design and implementation
 The cycle repeats with analysis, design, and
implementation of the next part and this repeats
until the project is complete
 Examines the objects of a system

39
Define the use
case model: Develop and
document the
• Use case diagram
• Use case scenarios
system

Create UML Modify the UML


diagrams diagrams

Develop class Draw statechart


diagrams diagrams

40
When to use Object-
When to use SDLC
oriented
• Systems have been • The problems modeled lend
developed and documented themselves to classes
using SLDC • An organization supports the
• It is important to document UML learning
each step • Systems can be added
• Upper level management gradually, one subsystem at a
feels more comfortable or time
safe using SDLC • Reuse of previously written
• There are adequate software is a possibility
resources and time to • It is acceptable to tackle the
complete the full SDLC difficult problems first
• Communication of how new
systems work is important

41
 Agile methods are a
collection of innovative, user-
centered approaches to
systems development
 Based on:
 Values
 Principles
 Core practices
 Activities
 Resources are adjusted to
ensure successful project
completion

Image source: https://www.surgeforward.com/wp-


content/uploads/2015/08/The-Agile-Development-Process.png 42
 The five stages of the
agile modeling
development process in a
project show that
frequent iterations are
essential to successful
system development

 Exploration
 Planning
 Iterations to the first
release
 Productionizing
 Maintenance

1-43
Listen for user stories

Draw a logical workflow model

Create new user stories based on the logical model

Develop some display prototypes

Create a physical data model using feedback from the


prototypes and logical workflow diagrams
44
 Spoken interaction between developers and users
 Seeking first and foremost to identify valuable business
user requirements
 The goal is prevention of misunderstandings or
misinterpretations of user requirements

User stories can be recorded on cards 45


Improving the efficiency of
systems development
Risks inherent in
organizational innovation

46
47
• in which a list is
Product derived from product
backlog specifications.
 Scrum is a high-intensity
methodology. • a dynamically
Sprint changing list of tasks
 It is just one of the
approaches that adopts
backlog to be completed in
the next sprint.
the philosophy of agile
• a 30-day period in which
modeling. the development team
Sprint transforms the backlog
 For additional note, please into software that can be
demonstrated.
watch this video.
https://www.scrumalliance.org/ • a brief meeting in
why-scrum Daily which communication
scrum is the number-one
rule.

• working software that


Demo can be demonstrated
to the customer.

48
49
Image source: What is Scrum? - An Overview, URL: https://www.ics.ie/news/view/1653
 An alternative of traditional software development where
proprietary code is hidden from the users
 Open source software is free to distribute, share, and
modify
 Characterized as a philosophy rather than simply the
process of creating new software
 Examples: Linux Operating System, Apache Web Server, Mozilla
Firefox
 Contributions to the open community and differentiation
from the open community are for the following reasons:
 Cost
 Managing resources
 Time it takes to bring a new product to the market

50
Four Types of
Open Source
Communities General
structure

Ad hoc Environment

Six Key
Dimensions Goals
Standardized that
Differentiate
Open Source Methods
Communities
Organized
User
community

Commercial Licensing

51
 Information is a key resource
 Integration of traditional systems with new technologies
 Roles and qualities of the systems analyst
 The systems development life cycle
 Fundamentals of three system development methodologies
 Prototyping
 Patched-up system
 Nonoperational
 First-of-a-series
 Selected-features

 Prototype development guidelines


 Prototype disadvantages and advantages
 Users’ role in prototyping 52
 Agile modeling
 Five values of the agile approach
 Principles of agile development
 Agile activities
 Agile resources
 Core practices of the agile approach
 Stages in the agile development process
 User stories
 Agile lessons

 Scrum methodology
 Open source software

53

You might also like