Automate your Kamailio Test Calls - Kamailio World 2024
Navigating Tensions between Traditional and Agile ISD Approaches
1. Navigating the Tensions between
Traditional and Agile
Development Approaches in Systems
Analysis and Design
Courses
Nik Rushdi Hassan
Professor MIS
2. Problem Statement
Systems Analysis and Design (SA&D) curriculum hasn’t
changed much since Davis’ (1984) first MIS book
Many changes have overtaken SA&D since then
New different methodologies, models and techniques – should
students be taught all?
DFD vs UML
Which UML?
Structured vs. Object-oriented
ERDs vs Objects
Gaps between traditional plan-based and empirical project
management
One or two SA&D courses? Separate project mgmt course?
Traditional SA&D vs. Agile (and multiple approaches in same
textbook)
Which Agile approach? (RUP, XP, Scrum, Kanban, Lean)
2
3. Solution: Theoretical
Framework for ISD
What is theory?
Means of explaining the world (Popper) – what theories explain SA&D?
Putting experience into a symbolic device for interpreting, criticizing, and unifying
established laws, modifying them to fit data unanticipated in their formulation, and
guiding the enterprise of discovering new and more powerful generalizations
(Kaplan) – What generalizations and laws do we have about SA&D?
Software Engineering – SEMAT (Software Engineering Method and Theory) –
latest efforts in developing theory in SE (Jacobson)
Why theory?
Take stock of our experience and add to that stock of knowledge
Currency of our scholarly realm – our theories are useful when others outside our
field use them
Explain and predict
Evidence of progress
To be applied in practice
Can we say what will contribute towards improving software project
failures from 70% to less?
Provide guidance on which is most effective and productive in teaching
SA&D
3
4. Progress in ISD
Framework
Paradigm
Approach
Methodology
Technique
Model
Tool
Example:
Functionalist paradigm (“as-
is” to “to-be”) Structured
approach Waterfall
(SDLC) methodology
Structured analysis and
design techniques DFD
model Visio
4
5. How does Agile fit in?
Paradigm (Functionalist or Humanistic/Agile
Manifesto)
Approach (Object-oriented and/or Agile)
Methodology (OOAD, RUP, XP, Scrum, Kanban)
Technique (Pair programming, Sprint, Daily
Scrum, Daily Stand Up, Process Improvement)
Model (Use cases, UML, User story, Backlog,
Burndown chart, Kanban Board, Work Item)
Tool (Rational, MS Project, Visio, Jira,
Monday.com, Wrike)
5
6. Highlight of Results (21 SA&D instructors)
Textbook
adopted
Project
management
tool adopted
Extent of agile
approach
adopted
Agile
methodology
adopted
Models
adopted
Dennis et al. (3)
Satzinger at al.
(2)
Dennis et al OO
with UML (2)
No textbook (7)
Microsoft
Project (3)
Jira (2)
Trello (2)
No project
management
tools (8)
Agile approach
exclusively (7)
Combine
traditional and
agile (11)
No agile
approach used
(1)
Scrum (16)
eXtreme
Programming
(2)
Kanban (2)
No agile
approach
specified (2)
Use case
diagram (14)
Class diagram
(11)
Activity diagram
(9)
ER Diagram (7)
Sequence
diagram (7)
Data Flow
diagram (5)
6
7. Recommendations
Rebranding SA&D
Agile is no longer SA&D. Agile does not differentiate between analysis and design
Teach students paradigms (values and emergent paradigm-embrace change and
complexity) and approaches (goals and guiding principles across different
methodologies)
Techniques, models and tools can vary depending on approaches
Combine PM with ISD
Require programming as prerequisite
Incorporate business acumen into design
Incorporate PM as part of ISD
Seamless flow into capstone
Teach exclusively Agile
Not enough time for hybrid – more confusing
Choosing the right methodology, techniques, models and tools
Decide on one major agile methodology
Choose related techniques
Teach only 2-3 major models
Flexible and capable tool
7
Introduce UMD not to be confused with Univ of Maryland, primarily a teaching school but with a strong research emphasis
As someone who has a background in software development I’ve always had an issue with how we teach SA&D, and how there’s this tension between computer science and IS
What really triggered this line of research was a visit from a parent who was considering UMD as the choice for her son, deciding between CS and MIS
I was Dept Head then and she asked me a question that I fumbled with. She asked, do you teach DevOps. This was around 2017, and I said, no, and I could not give her a good answer.
I realized that we’ve been teaching SA&D no different from how it’s been taught in the 1980s – SDLC
The world has moved on since then – but we are still SA&D