Professional Documents
Culture Documents
I. Introduction to ISDM
Dr. Chutiporn Anutariya | chuti at ait dot asia
1
Course Resources and Survey
TBA
2
What is a System?
3
General System Theory
Definition: A system is a set of components that interact with one another and
serve for a common purpose or goal
4
What is an Information System?
5
What is an Information System?
6
Information Systems Triangle
Information systems are the
combination of people, information
technology, and business processes to
accomplish a business objective.
7
Components of an information system
8
Components of an information system
9
Information vs. Data
◦ Data are streams of raw facts
◦ Information is data shaped into meaningful form
Src: K.C. Laudon and J.P. Laudon: Management Information Systems: Managing the Digital Firm (13th Edition), Pearson
10
Data/Information Quality Measures
• Completeness
• Lack of
Ambiguity
Data/Info • Timeliness
Quality • Correctness
• Consistency
• Reliability
11
Importance of Information Systems in
Organizations and Businesses
12
The Role of Information Systems in
Business Today
Information Systems Are
More Than Computers
Using information systems
effectively requires an
understanding of the organization,
management, and information
technology shaping the systems. An
information system creates value
for the firm as an organizational and
management solution to challenges
posed by the environment.
Src: K.C. Laudon and J.P. Laudon: Management Information Systems: Managing the Digital Firm (13th Edition), Pearson
13
Perspectives on Information Systems
Levels in a Firm
Business organizations are
hierarchies consisting of
three principal levels:
senior management,
middle management, and
operational management.
Information systems serve
each of these levels.
Scientists and knowledge
workers often work with
middle management.
Src: K.C. Laudon and J.P. Laudon: Management Information Systems: Managing the Digital Firm (13th Edition), Pearson
14
Information Systems to support
decisions across all levels
15
Types of Information Systems
Src: K.C. Laudon and J.P. Laudon: Management Information Systems: Managing the Digital Firm (13th Edition), Pearson 16
Order Processing
Sales Management Production Scheduling
Payroll
Annual Budgeting
Checkpoint Inventory Control
Personnel Planning
Identify the
Sales Region Analysis
levels and Profitability Analysis
17
Examples
5 Year Sales Trend Forecasting
Inventory Control
Payroll
Src: K.C. Laudon and J.P. Laudon: Management Information Systems: Managing the Digital Firm (13th Edition), Pearson 18
Types of Information Systems
Src: K.C. Laudon and J.P. Laudon: Management Information Systems: Managing the Digital Firm (13th Edition), Pearson 19
Hardware Software Data Procedures People
23
1. What is Software?
24
2. What are attributes of good software?
27
3. What is software
engineering?
Software engineering is an
engineering discipline that
is concerned with all
aspects of software
production.
28
Software Engineering
Engineering
Discipline
All aspects of
SW
production
29
4. What are the
fundamental software
engineering activities?
30
4. What are the fundamental
software engineering activities?
Software specification,
software development,
software validation and
software evolution.
31
Software process activities
Customers and engineers define the software
Software that is to be produced and the constraints on
Specification its operation.
Software
Development The software is designed and programmed.
33
5. What are the key challenges
facing software engineering?
34
6. What are the best
software engineering
techniques and methods?
35
6. What are the best software
engineering techniques and
methods?
While all software projects have to be
professionally managed and developed,
different techniques are appropriate for
different types of system. For example,
games should always be developed using
a series of prototypes whereas safety
critical control systems require a complete
and analyzable specification to be
developed. You can’t, therefore, say that
one method is better than another.
36
Importance of software engineering
37
Importance of software engineering
Well-defined methodologies
Proper documentation
Software maintainability
38
Software project failure
What are factors causing software
projects to fail?
39
Ref: Chaos Report 2015 by the Standish Group
40
Sources of Software
41
IT services
firm
Packaged
In-house
software
developer
producer
Sources
of
Software Enterprise
Open
-wide
source
solution --
software
ERP
Cloud
Computing
42
43
Criteria for Choosing Off-the-shelf SW
44
Criteria for Choosing Off-the-shelf SW
Cost
Functionality
Vendor support
Viability of vendor
Flexibility
Documentation
Response time
Ease of installation
45
History of Software
Engineering
Ref: Boehm (2006) A View of 20th and 21st Century Software Engineering
46
History of Software Engineering
Src: Boehm (2006) A View of 20th and 21st Century Software Engineering
47
1950’s to 1960’s
1950’s : Hardware Engineering
• Software Engineering is like
Hardware Engineering.
• Measure twice, cut once.
48
1970’s : Formality &
Waterfall Process
• Go To statement considered
harmful
• Structured design &
programming
• Modularity principle (reduced
coupling, increased cohesion)
• Information hiding & abstract
data type
• Mythical Man-Month
49
50
51
52
1980’s Productivity & Scalability
53
1980’s : Productivity & Scalability
• Quality Practices and Process Maturity
• Software Tools : More efficient work
• Test Tools, eg. automated test case generators, unit test tools
• CASE: Computer-Aided Software Engineering
• Software Processes : Reducing rework
• Software Reuse : Work Avoidance
• GUI, WYSIWYG, middleware
• DBMS, 4GL
• Object-orientation (Smalltalk, Eiffel, C++, Java)
54
1990’s: Concurrent vs. Sequential Processes
55
1990’s: Concurrent vs. Sequential Processes
• Object-oriented Methods
• Design patterns, software architectures, architecture
description languages, UML
• Emphasis on Time-to-Market
• Shift from sequential waterfall model to concurrent
engineering of
• requirements, design, and code;
• product and process; and
• software and systems
• Reuse-intensive and
COTS-intensive software dev.
56
1990’s: Concurrent vs. Sequential Processes
• Controlling concurrency
• Risk-driven spiral model
• Open-source development
• Linux, W3C, Apache, TCL, Python, Perl, and Mozilla
• Usability and HCI (Human-Computer Interaction)
• increased usability of software products by non-
programmers, not developing programmer-friendly UI!
• Rapid prototyping
57
2000’s : Agility and Value
58
2000’s : Agility and Value
• Agile Methods (Scrum, XP)
• Manifesto:
• Individuals and interactions over processes and tools.
• Working software over comprehensive documentation.
• Customer collaboration over contract negotiation
• Responding to change over following a plan.
• Value-Based SE
• Emphasis on product usability
and value added rather than
product features & purchase costs
• Problem of emergent requirements,
IKIWISI (I’ll know it when I see it)
syndrome
• COTS, Open Source
and Legacy Software
59
2000’s : Agility and Value
• Model-driven
Development
• Domain models (eg.
bank, automobiles,
vehicles, supply-chains,
civil engineering) that
lead to architectures
• Problem of rapidly
changing technologies
60
2010+ : Globalization and Systems of Systems
61
2010+ : Globalization and Systems of Systems
• Connectivity and collaboration (enabled by high
bandwidth communication)
• software teams that do not occupy the same physical space
(telecommuting and part-time employment in a local context).
• Globalization leads to a diverse workforce
• In terms of language, culture, problem resolution, management
philosophy, communication priorities, and person-to-person
interaction
• Enterprise architectures
• IBM Zachman Framework
• Reference Model for Open Distributed Processing (RM-ODP)
• Enterprise Architecture Framework
• Enterprise Resource Planning (ERP) packages.
62
Let’s make a
SUMMARY
together!
63