Template for Proposed New Course(s)

advertisement
MIS 730:
Integrating IS Technologies
Semester: Fall 2014
Jeffrey Nickerson
jnickerson@stevens.edu
Babbio 631
Office hours: Thursday 3-5 pm.
Class Location: Babbio 320
Overview / Catalog Description
This course focuses on ways of designing and integrating an information systems architecture. The course
explains the different forms of corporate information systems and their interaction. While in the past, large
computer systems were often self-contained, in current systems, it is more likely that such systems are part
of an overall architecture including many smaller hardware devices and operating systems. The student will
learn about the building blocks of current IS architectures, and then will learn how to connect them to solve
problems. In particular, the student will gain an understanding of principles of design, including the control
of memory hierarchies, ways of modularizing, ways of parallelizing tasks, ways of generating a new
architecture, and ways of evaluating the architecture.
Introduction to Course
While information systems students are trained in ideas relating to enterprise systems, they often are not
familiar with full extent of the technologies underlying an integrated information systems architecture.
This course grounds students in this underlying technology, and then teaches them how to connect
components to form an architecture that will answer the needs of institutions.
These architectures are important to those dedicated a career in information systems: the architectures must
be understood in order to function in an IS department. These architectures are important for managers as
well as analysts and programmers: managers are expected to understand a systems diagram of present
systems and speak to the fit of a proposed architecture for accomplishing institutional goals.
Thus, the course will make students proficient in the vocabulary and grammar of modern enterprise
systems, the techniques for integrating them, and this proficiency will be useful throughout the students’
careers.
Learning Goals
1.
2.
3.
By the end of this course, students will be able to formulate a series of plausible alternative
designs for integrating technologies.
Students will know the different components of IS architectures, how they work, and how they
integrate with each other.
Students will improve their ability to communicate about design in group and presentation
settings.
1
Required Text
The instructor will supply readings and notes periodically in class.
In addition, the following Wikipedia entries are required reading. When reading the entries, you are
encouraged to read more deeply in the related entries.
Personal Information Manager
Personal Information Management
Cache
Software Architecture
Abstraction layer
Network devices
Internet Protocol Suite
Merge-sort
Storage hierarchy
Moore’s law
Disk Drives
Data Parallelism
Task Parallelism
RAM memory
Artificial Intelligence
Multi-core
Scalability
RAID
SaaS (Software as a Service)
Cloud Computing
Solid State Drives
Autonomic computing
Social Network
Map Reduce
Client-Queue-Client
Tradeoff
Two-phase locking
Service-oriented Architecture
Message Passing
Unified Modeling Language
Design Pattern
Asynchronous I/O
Decision Tree
Bayesian Inference
Cognition
Suggestions for supplemental reading
There are three suggested texts, which complement each other. The first book is general, about design,
providing methods for designing systems and other things. The second book explains the ideas and
standards relating to enterprise architecture. The third book is more technical, discussing the kinds of
problems architects will face, and providing some potential solutions. The books do not address in detail
some of specific issues that drive the design of systems, and so I have assigned Wikipedia articles that
supplement the books and the lectures.
Brooks, F. P. The Design of Design: Essays from a computer scientist, Addison-Wesley 2010.
A book about the design of systems (and other things) from the author of the mythical man month
Lankhorst, M. Enterprise Architecture at Work: Modelling, Communication and Analysis, 2nd ed., 2009,
Springer (or the 1st edition, available in the library in electronic form for download.)
A high-level look at systems architecture
Garland, J., and Anthony, R. Large-Scale Software Architecture: A Practical Guide using UML, Wiley,
2003.
A software architecture book, using UML. More technical than the Lankhorst text.
Other Texts:
2
Maier, M.W. and Rechtin, E. The Art of Systems Architecting,2 nd Edition, CRC Press, 2000.
The book contains good heuristics for how to design systems, with a focus on military systems.
Fowler, M. Patterns of Enterprise Application Architecture, Addison Wesley, 2002.
This is a technical book, more so than Garland, with Java code associated with the different patterns.
Erl, T. SOA Design Patterns, Prentice Hall, 2009.
This book focuses specifically on Service Oriented Architecture.
Baldwin, C. Y. and K. B. Clark (2000). Design rules. Cambridge, Mass., MIT Press.
This book is about modularity.
Shaw, M. and D. Garlan (1996). Software architecture: perspectives on an emerging discipline. Upper
Saddle River, N.J., Prentice Hall.
A good academic book on software.
Assignments
Students will master the conceptual material through the lectures and the associated readings. They will be
quizzed weekly. Towards the end of the course, they will engage in a large-scale group design project, to be
presented by the last class of the semester.
I encourage you to build on the ideas of others, and I require you to cite the work that influences your
design. Please follow this link and read carefully: http://www.plagiarism.org/.
Assignment
Quizzes and homework
Final Design
Participation
Total Grade
Grade
Percent
60%
30%
10%
100%
Ethical Conduct
The following statement is printed in the Stevens Graduate Catalog and applies to all students taking
Stevens courses, on and off campus.
“Cheating during in-class tests or take-home examinations or homework is, of course, illegal and immoral.
A Graduate Academic Evaluation Board exists to investigate academic improprieties, conduct hearings,
and determine any necessary actions. The term ‘academic impropriety’ is meant to include, but is not
limited to, cheating on homework, during in-class or take home examinations and plagiarism.“
Consequences of academic impropriety are severe, ranging from receiving an “F” in a course, to a warning
3
from the Dean of the Graduate School, which becomes a part of the permanent student record, to expulsion.
Reference:
The Graduate Student Handbook, Academic Year 2003-2004 Stevens
Institute of Technology, page 10.
Consistent with the above statements, all homework exercises, tests and exams that are designated as
individual assignments MUST contain the following signed statement before they can be accepted for
grading. ____________________________________________________________________
I pledge on my honor that I have not given or received any unauthorized assistance on this
assignment/examination. I further pledge that I have not copied any material from a book, article, the
Internet or any other source except where I have expressly cited the source.
Signature _________________________
Date: _____________
Please note that assignments in this class may be submitted to www.turnitin.com, a web-based antiplagiarism system, for an evaluation of their originality.
Course/Teacher Evaluation
Continuous improvement can only occur with feedback based on comprehensive and appropriate surveys. Your
feedback is an important contributor to decisions to modify course content/pedagogy which is why we strive for
100% class participation in the survey.
All course teacher evaluations are conducted on-line. You will receive an e-mail one week prior to the end of the
course informing you that the survey site (https://www.stevens.edu/assess) is open along with instructions for
accessing the site. Login using your Campus (email) username and password. This is the same username and
password you use for access to Moodle. Simply click on the course that you wish to evaluate and enter the
information. All responses are strictly anonymous. We especially encourage you to clarify your position on any of
the questions and give explicit feedbacks on your overall evaluations in the section at the end of the formal survey
which allows for written comments. We ask that you submit your survey prior to end of the examination period.
4
#
Title
Description
Assignments
due
Reading due
Personal
Information
System 1
Wikipedia:
Software architecture
Personal
Information
System,
Personal
Information
Manager,
Cache
Overview of the course
What will you learn?
1
8/28
Introduction
Actors and scenarios
Design space
What does an institution want out of an
architecture?
2
9/4
Architecture Process
Why is an architecture so hard to create?
What are the steps?
3
9/11
Representing the
architecture
Table of contents for an architecture
document.
Personal
Information
System 2
Diagramming conventions
Design Patterns
4
9/18
Architecture Patterns
Asynchronous methods for integration
Group
project 1
Wikipedia:
Unified Modeling
Language
Wikipedia:
Design Pattern
Asynchronous I/O
Further reading:
Fowler, Wikipedia:
process calculus
5
9/25
Design Scenarios
Several practice problems and the kinds of
questions that should be asked in solving
them
Ways of subdividing a system.
6
10/2
7
10/09
Layers and Components
Storage Hierarchy
The value of abstraction
Memory and Disk
Moore's law
How storage speeds drive design decisions
Group
project 2
Individual
assignment
2 v1
Wikipedia:
Abstraction layer
Network devices
Internet Protocol Suite
Mainframe computer
Individual
assignment
2 v2
Wikipedia:
Storage hierarchy
Moore’s law
Disk Drives
5
#
8
10/16
Title
Description
Midterm
Parallelism
How mainframes provide data parallelism
How Google and other search companies
handle large amounts of data.
Individual
assignments
due
for
review.
Final project
starts
How do you know if an architecture is good
or bad?
10
10/30
Evaluating Architecture
11
11/6
Changing the
architecture
12
11/13
Emerging infrastructure
technologies
13
11/20
Review
14
12/4
Summary, final
presentations
Reading due
Wikipedia:
Data Parallelism
Task Parallelism
RAM memory
Multi-core
Scalability
RAID
Map Reduce
Client-Queue-Client
Data and task parallelism
9
10/23
Assignments
due
Wikipedia:
Service-oriented
Architecture
Message passing
Transactions
Security
Recoverability
Wikipedia:
Cognition
Social Networks
How do you change an architecture?
Transitions, green fields, and legacies.
Wikipedia:
SaaS (Software as a
Service)
Cloud Computing
Solid State Drives
Autonomic computing
Artificial Intelligence
Clouds, virtualization, solid state disks, AI,
autonomic computing
Students present their projects to the class
Wikipedia:
Decision tree
Bayesian Inference
Tradeoff
IBM Parallel Sysplex
Two-phase locking
Final project
due
6
Download