The use of model to
conceptualize and
construct systems
The interdisciplinary study
of the use of these models
Systems modeling,
analysis, and design efforts
Systems modeling and simulation,
such as system dynamics
Types of Modeling
Waterfall Model (linear)
Sequential development process, development flows
steadily downwards through the SDLC phases;
Analysis
Design
Implementation
Testing
integration
Maintenance
Waterfall Model Image Representation
emphasizing planning, time schedules, target dates,
budgets and implementation at one time allows us to
consider, think and plan through the entire life of a
project
Parallel Development (Structured)
Similar to Waterfall Model difference being
Instead of completing each one of the
phases for the whole project the project is
divided into small projects and each one of
the phases is implemented separately for
each one of them
This way, the development process is
carried on concurrently and separately
for each one of the small sub projects.
Prototyping (iterative)
Prototying allows people to have
'Stake' or interest in a system to
'Test Drive' designs
Not all prototypes are interactive, the most useful
application of prototyping is based upon providing a
simulation of some behaviour and functionality.
Agile (iterative)
Advocates a lighter more people-centric view point
than traditional aprroaches of iterative development
Agile processes fundamentally incorporate iteration
and the continuous feedback that it provides to
successively refine and deliver a software system.
Spiral (Linear + Iterative)
Allows for incremental releases of the
product, or incremental refinement through
each time around the spiral
The spiral model also explicitly
includes risk management within
software development
Based on continuous refinement of key products for
requirements definition and analysis, system and software
design, and implementation (the code
Uses many of the same phases as the waterfall
model, in essentially the same order, separated
by planning, risk assessment, and the building
of prototypes and simulations
Starting at the center, each turn around the
spiral goes through several task regions;
- Dtermine the objectives,
alternatives, and constraints on
the new iteration.
- Evaluate
alternatives and
identify and resolve
risk issues
- Develop and
verify the product
for this iteration
- Plan the next iteration
Interfacing
Interface metaphor is a set of
user interface visuals, actions
and procedures that exploit
specific knowledge that users
already have of other domains
example of an interface metaphor is the
folders and the file cabinet representation
of the file system of an operating system.
Another example is the tree view
representation of a file system, as in a file
manager, that helps a user to use it, given
some previous knowledge of recursive
structures
Usability (Simplicity, less is more,
don't make me think, don't make me
read)
Testing Usability
1. Get users to try the system out and
talk about their experience (see Krug)
Select roles Select tasks Get users
(role-person) to try to execute the task
2. Get the user to talk through what
they are doing and record this.
Record the users facial expressions.
Record the mouse movements
3. Play back video to user, and
have them explain in further detail
4. Analyse what went wrong and compile
the data: Error severity Number of mouse
clicks used Facial expressions, show
frustration etc Navigation paths
"Usability is a quality attribute that assesses
how easy user interfaces are to use.”
(Nielsen, 2003)
5 quality componets
Learnability: How easy is it for users to accomplish basic tasks the
first time they encounter the design?
Efficiency: Once users have learned the design, how quickly can
they perform tasks?
Memorability: When users return to the design after a period of not
using it, how easily can they reestablish proficiency?
Errors: How many errors do users make, how severe are these
errors, and how easily can they recover from the errors?
Satisfaction: How pleasant is it to use the design?
10 usability heuristics
Visibility of system status: The system should always keep users informed about what
is going on, through appropriate feedback within reasonable time.
Match between system and the real world: The system should speak the users'
language, with words, phrases and concepts familiar to the user, rather than
system-oriented terms. Follow real-world conventions, making information appear in a
natural and logical order.
User control and freedom: Users often choose system functions by mistake and will
need a clearly marked "emergency exit" to leave the unwanted state without having to
go through an extended dialogue. Support undo and redo.
Consistency and standards: Users should not have to wonder whether different words,
situations, or actions mean the same thing. Follow platform conventions.
Error prevention: Even better than good error messages is a careful design which
prevents a problem from occurring in the first place. Either eliminate error-prone
conditions or check for them and present users with a confirmation option before they
commit to the action.
Recognition rather than recall: Minimize the user's memory load by making objects,
actions, and options visible. The user should not have to remember information from
one part of the dialogue to another. Instructions for use of the system should be visible
or easily retrievable whenever appropriate.
Flexibility and efficiency of use: Accelerators -- unseen by the novice user -- may often
speed up the interaction for the expert user such that the system can cater to both
inexperienced and experienced users. Allow users to tailor frequent actions.
Aesthetic and minimalist design: Dialogues should not contain information which is
irrelevant or rarely needed. Every extra unit of information in a dialogue competes with
the relevant units of information and diminishes their relative visibility.
Help users recognize, diagnose, and recover from errors Error messages should be
expressed in plain language (no codes), precisely indicate the problem, and
constructively suggest a solution.
Help and documentation Even though it is better if the system can be used without
documentation, it may be necessary to provide help and documentation. Any such
information should be easy to search, focused on the user's task, list concrete steps
to be carried out, and not be too large. I originally developed the heuristics for heu
Stages from the SDLC
2. Project Initiation + Planning
Operational Feasibility
Economic Feasibility
Technical ^
Human Factors ^
Legal/Political ^
3. Analysis
User Requirements
System Requirements
4. Design
Desired Software Features in Detail
Functional Hierarchy diagrams
Screen Layout diagrams
Tables of Business Rules
Business Process Diagrams
Pseudo-Code
entity-relationship diagram + Full Data Dictionary
5. Implementation
Changes and enhancements would be made
with the implementation
Two approaches to System Development
Structured
Object Oriented
6. Maintenace
1. Project Idenification and Selecion
Reporting
Giving data meaning it becomes information,
information is processed data.
Value of reports
Well-designed reports have useful
information in a time series, making them a
valuable data repository. And if the report
covers the right questions, the process of
gathering the information can generate
valuable insights for the project team to act
upon.
Principles of good reports
- Title must be informative
- Number of pages
- Date
- Time (must not change + must be in
a useful place)
- Same header on every page
- Don't switch fonts
- Don't use multiple font sizes (2 max,
header + rest)
Classic reports (columnar)
- Column widths decided by
width of data not header
- Sort columns on the left
- Text columns almost always
left justified
- Numeric almost
always right jutified
Trading
Information Systems relate
tightly to Trading, almost all
trading is done via IS
Elements of Trading
Order
Delivery Note
Invoice
Remittance Advice
Returns Note
Credit Note
Account
Statement
Book-Keeping
MRP&MRPII / JIT
Just in Time
"pull" system of production
Orders provide a signal for when a product
should be manufactured
Demand-pull enables production only of
what is required in the correct quantity and
at the correct time
This means that stock levels of raw
materials, components, work in progress and
finished goods can be kept to a minimum.
requires a carefully planned
scheduling and flow of resources
through the production process
Information is exchanged with
suppliers and customers through EDI
(Electronic Data Interchange) to help
ensure that every detail is correct.
0 Targets of JIT
0 Defects - poor quality is inevitable
0 inventory - Rejecting the view that
it is an asset
Proof of work
buffer against poor suppliers
ensure machine utilisation
0 lead time / set up time
○ When it takes a day to set up - you need to
make as much as you can to cover the cost of
set up
Lower set up time better
0 handling
○ Make it so that when one part is done it can move to
the next part without much time i.e. next to each other
Changes resulting from JIT
Factory Layout
○ Re-laid the factory - e.g. put doors in the
factory to make the incoming lorry part of the
production line etc.
Product Design
○ You design the product to be easier to make
○ Multi-disciplinary teams come in to make the
product easier to make
Customer
Change relationships with customer,
able to build around customer request
Supplier
Contracts change
Material Requirements Planning
production planning and inventory
control system used to manage
manufacturing processes
Software-based
Can be done by hand
1. Ensure materials are available for
production and products are available
for delivery to customers.
2. Maintain the lowest possible
material and product levels in
store
3. Plan manufacturing activities,
delivery schedules and purchasing
activities
Inputs
BOM (Bill Of Materials)
Statement of all the parts needed to
make 1 product. Came in the 50's 60's
MPS (Master Production Schedule)
How many going to be made in a day or set time
Can change
Manufacturing Time
Ordering Lead Times
Order Schedule
Stock Position
Outputs
Schedule of orders
Each item required
how many and the date
order must be placed
with supplier
MRP software
Can be done via spreadsheet
but the more complex the better
it is for MRP software
Issue with MRP
MRP ignores capacity
Having materials to make 1000 of x but only able to make 500
Assumes infinite manufacturing capacity
MRPII made to resovle issues
MRPII (Manufacturing Resources Planning)
MRPII differs as it incorporates processes
limitation into it's ideology
Where MRP has BOM MRPII adds
BOP (Bill Of Processes)
BOP calculates:
- Number of items able to
produce at any one time(start
time and quantity)
- Produces a shop floor schedule
- What and when to order
- Produces a stock ordering schedule
BOP allows the right materials to
be ordered at the right time when the
production is actually going to take
place
The Systems Analysis and Design (SAD) is
the process of developing Information
Systems (IS) that effectively use hardware,
software, data, processes, and people to
support the company's businesses objectives