peter fox xinformatics – week 7, march 6, 2012
DESCRIPTION
Information architectures theory and practice continued (Internet, Web, Grid, Cloud) and class project definitions. Peter Fox Xinformatics – Week 7, March 6, 2012. Contents. Review of last class, reading - PowerPoint PPT PresentationTRANSCRIPT
1
Peter Fox
Xinformatics – Week 7, March 6, 2012
Information architectures theory and practice continued (Internet, Web, Grid, Cloud) and class project definitions
Contents• Review of last class, reading
• Information architectures theory and practice (Reference, Internet, Web, Grid, Cloud) and class project definitions
• Project assignment
• Next classes
2
(Information) Architecture
• Definition: – “is the art of expressing a model or concept of
information used in activities that require explicit details of complex systems” (wikipedia)
– “… I mean architect as in the creating of systemic, structural, and orderly principles to make something work - the thoughtful making of either artifact, or idea, or policy that informs because it is clear.” Wuman
3
Theory• Look back through the first half of the course
– the topics
• Many theoretical considerations contained therein:– On a discipline basis – informatics comprises
parts of computer science, social and cognitive science and library science, as well as its own science
– On a decomposition basis: Context, Content, Structure; Syntax, Semantics, Pragmatics; etc.
– On a methodological basis: Use cases; functional requirements, information models, etc.
4
Reference architectures• “provides a proven template solution for an
architecture for a particular domain. It also provides a common vocabulary with which to discuss implementations, often with the aim to stress commonality.
• A reference architecture often consists of a list of functions and some indication of their interfaces (or APIs) and interactions with each other and with functions located outside of the scope of the reference architecture.” (wikipedia) 5
U.S. Federal Enterprise Arch• E.g. The Federal Enterprise Architecture
Reference Model Ontology (FEA-RMO) is a domain specific ontology of the Federal Enterprise Architecture reference models.
• FEA-RMO directly translates the Performance, Business, Service Component, and Technical reference models into their executable representation in OWL-DL.– http://web-services.gov/fea-rmo.html
6
FEA Domain model
7
8
Data Description
9
Data Sharing
10
Data Context
11
MVC• Model
• View
• Controller
12
Internet/ Intranet• Communications versus information
architecture?
• http://www.slideshare.net/postwait/scalable-internet-architecture
• See the reading for this week, RFC1958 and the role of the Internet Engineering Task Force (IETF) and the Request for Comment Process
13
E.g.
14
WWW• Design for the web (Tim Berners Lee)
• “Principles such as simplicity and modularity are the stuff of software engineering; decentralization and tolerance are the life and breath of Internet. To these we might add the principles of least powerful language, and the test of independent invention when considering evolvable Web technology.”
15
Original design issues• See http://www.w3.org/DesignIssues/Overview.html• Here are the criteria and features to be considered:
– Intended uses of the system.– Availability on which platforms?– Navigational techniques and tools: browsing, indexing,
maps, resource discovery, etc– Keeping track of previous versions of nodes and their
relationships– Multiuser access: protection, editing and locking,
annotation.– Notifying readers of new material available– The topology of the web of links– The types of links which can express different
relationships between nodes
16
Original design issues• These are the three important issues which
require agreement between systems which can work together– Naming and Addressing of documents– Protocols– The format in which node content is stored and
transferred
• Implementation and optimization– Caching , smart browsers, knowbots etc., format
conversion, gateways17
Web architectural elements
18
URIHTMLHTTP
Common Gateway Interface
19
Client – Server and multi tier
20
Web page/site architecture• Hierarchies, we call them levels:
– Top level (the main page)– Second (and further) level (via navigation)– Balancing the levels
• Remember your use case, the actors, the resources, the information model, information entropy, the signs, ...
21
CEDAR 1.0 circa 1990
22
CEDAR 2.0 circa 1994
23
24
2000
25
Multi-tiered Interoperability
Grid• “One of the main strategies of Grid computing
is to use middleware to divide and apportion pieces of a program among several computers, sometimes up to many thousands.
• Grid computing involves computation in a distributed fashion, which may also involve the aggregation of large-scale cluster computing based systems.” (wikipedia)
27
“What is the Grid?” • A Three Point Checklist, Ian Foster lists these
primary attributes:– Computing resources are not administered
centrally– Open standards are used.– Nontrivial quality of service is achieved.
28
Open Grid Services Architecture
29
Statefull versus stateless• A key distinction between Grids and Web
environments is state, i.e. the knowledge of ‘who’ knows and remembers ‘what’
• Increasingly there is a need for maintaining some form of state, i.e. reducing information entropy in web and internet-based architectures
• Thus, enter the need for ‘state for a defined purpose’…
30
Cloud• "a computing capability that provides an
abstraction between the computing resource and its underlying technical architecture (e.g., servers, storage, networks), enabling convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction.” (wikipedia)
• Logical extension of virtualization
• Often tied to the cost model 31
Primary Benefits of Cloud Computing• To deliver a future state architecture that captures the promise of Cloud
Computing, architects need to understand the primary benefits of Cloud computing
• Decoupling and separation of the business service from the infrastructure needed to run it (virtualization)
• Flexibility to choose multiple vendors that provide reliable and scalable business services, development environments, and infrastructure that can be leveraged out of the box and billed on a metered basis—with no long term contracts
• Elastic nature of the infrastructure to rapidly allocate and de-allocate massively scalable resources to business services on a demand basis
• Cost allocation flexibility for customers wanting to move CapEx into OpEx
• Reduced costs due to operational efficiencies, and more rapid deployment of new business services
32
Software as a service (SaaS)• A SaaS provider typically hosts and manages
a given application in their own data center and makes it available to multiple tenants and users over the Web.
• Some SaaS providers run on another cloud provider’s PaaS or IaaS service offerings.
• Oracle CRM On Demand, Salesforce.com, and Netsuite are some of the well known SaaS
33
Infrastructure as a service (IaaS)• is the delivery of hardware (server, storage and
network), and associated software (operating systems virtualization technology, file system), as a service. It is an evolution of traditional hosting that does not require any long term commitment and allows users to provision resources on demand.
• Unlike PaaS services, the IaaS provider does very little management other than keep the data center operational and users must deploy and manage the software services themselves--just the way they would in their own data center. Amazon Web Services Elastic Compute Cloud (EC2) and Secure Storage Service (S3) are examples of IaaS offerings. 34
Platform as a service (Paas)• is an application development and deployment platform
delivered as a service to developers over the Web.• facilitates development and deployment of applications without
the cost and complexity of buying and managing the underlying infrastructure, providing all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely available from the Internet.
• consists of infrastructure software, and typically includes a database, middleware and development tools.
• A virtualized and clustered grid computing architecture is often the basis for this infrastructure software.
35
Platform as a service (Paas)• Some PaaS offerings have a specific programming language
or API. • For example, Google AppEngine is a PaaS offering where
developers write in Python or Java. • EngineYard is Ruby on Rails. • Sometimes PaaS providers have proprietary languages like
force.com from Salesforce.com and Coghead, now owned by SAP
36
Simple cloud architectures
37
More complex clouds
38
More details…
39
Cloud domain decompostion
40
By functional domain
Towards a reference architecture?
41
Discussion• About architecture in general?
• Design?
• Internet, web, grid, cloud?
42
Project Assignment• A) Analysis of existing information system content
and architecture, critique, redesign and prototype redeployment
• B) Pursuit of a detailed use case around a particular area of informatics, includes developing a prototype IS, architecture, design, etc.
• Due April 24 (write up) and May 1 (presentation) • That’s 7 (8) weeks• Check in on progress in ~ 3 weeks
43
Teams (*tentative*)• Red – Jeff, Nikhita, Thiru, Joengmin, Yue R
• Orange – Daniel, Han, Sapan, Liying, Ram
• Yellow – Akeem, Eric, Sherry, Conyang, Brendan
• Green – Linyun, Randy, Weijing, Steve, Anshuman
• Blue – Jin, Lily, Robin, Kiran, Chen Z
• Indigo – Apurva, Amruta, Mike, Chen W
• Violet – Nupoor, Jay, Naveen, Ruiwen44
What is next• Reading for this week
– Design, color– Architectures– Life cycle
• Week 8 – Information Integration, Life-cycle and Visualization
• Week 9 – Information Management, Workflow, and Discovery and project check in/ discussion
45