Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

31
Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    0

Transcript of Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Page 1: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Information Systems LaboratoryFinal Year Projects 2008-9

Dr Simon McGinnesEvangelos Kapros

Page 2: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Projects

• Online Interactive Modelling Tool– Gordon Johnston [email protected] – Steven Mullen [email protected]

• Online Query Facility– Virgil Brouard [email protected]

• Online Image Selection Tool– Aidan Rooney [email protected]– Anthony Nugent [email protected]– Anthony Wright [email protected]

Page 3: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Outline

• Overall research project– “Adaptive Information Systems”– Software with changeable conceptual model

• Based on principle of conceptual data independence– Structure of application is unrelated to the

business concepts it implements

Page 4: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example: Order Processing System• Separate forms:

– customer list, new customer, edit customer, product list, new product, edit product, etc.

• Separate database tables– Customer, Product, Order, Delivery, etc.

• May also be queries, reports, middleware objects, etc.

• Each item must be created by hand• The business concepts are embedded in the

software design at several levels= Conceptual data dependence

Page 5: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example

Page 6: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example

Page 7: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example

Page 8: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example

Page 9: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example

Page 10: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Why Are Applications Designed Around Business Concepts?

• CODASYL databases (1960s)• Codd (1971)

– Relational database– Data normalisation

• Chen (1976)– Entity-relationship (E-R) modelling

• OO class diagrams (1980s)• XML and semantic web (1998)• All of these techniques push developers towards

conceptual data dependence

Page 11: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

• A relatively simpleE-R diagram

• Most organisationshave much morecomplex conceptualmodels

Page 12: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

The Downside• It takes a long time to build each part of each

application by hand• It requires great expertise• It is an error-prone process

– Systems can be unreliable– Exhaustive testing is expensive

• That’s why software is expensive!• Also, once created, applications cannot easily be

altered– Too expensive, and too likely to ‘break’ the system

Page 13: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

But Why Would You Want to Modify a System?

• In reality:– Customers don’t know what they want until they

see (and use) something– Developers misunderstand the business concepts

first time around– Businesses evolve all of the time

• New ways of working• New products• Mergers and acquisitions

• Systems have to try to keep pace

Page 14: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

An Alternative to Conceptual Data Dependence?

• Build applications in a way that ignores the business concepts they implement– When the concepts change, the application

doesn’t have to– You could build a new application just by

specifying its concepts– Quicker, safer, cheaper!– Less skill required – empowers non-IT specialists

Page 15: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

How?

• Use ‘soft schemas’– In a traditional application, the schema (database

table structure) is ‘hard’ (fixed at design time)– In an adaptive IS (AIS), the schema is ‘soft’ (stored

as data and interpreted at run time)

• XML is an ideal medium for soft schemas• It is also a good medium for storing data in a

concept-independent way

Page 16: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

AIS Architecture

Application server (TomCat) running on server hardware

Generic ApplicationServer Component

(Java servlet)

ConceptualModel(XML)

Server

Business end user

Modeller

Web browser running on client hardware

Generic ApplicationUser Interface Component

(SWF)

Laptop

Modeller

XML data fileresiding on a file server

Data file(XML)

Server

Data file(XML)

Model file (XML)Data chunk (XML)

Updated datafile (XML)

Request for modelRequest for data

Model file (updated)Data chunk (updated)

Page 17: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

AIS User Interface (Adobe Flex)

Page 18: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

10..*

+load()+save()+validate()

-conceptualModel : ConceptualModel-mainPanel : Panel-conceptPanels : Panel

GenericApplicationUI

10..1

1

0..*

0..1 1

0..1 1

1

*

view

model

+display()+close()

-title-icons : IconControl

view::Panel

-conceptId

view::ConceptPanel

+display()+select()

-label-icon-showMany-showSelector-position-itemId

view::IconControl

1

0..*

+load()+save()+validate()

-title-dateUpdated-version-author-iconPath-notes-concepts : Concept

model::ConceptualModel

-id-name-pluralName-notes-categoryId-iconPath-items : ConceptItem

model::Concept

10..*

-id-name-position-mandatory-selectorPosition

model::ConceptItem

10..*

-conceptId-allowMany-verbPhrase-collectiveTerm

model::RelatedConcept

-_1 0..*-_1 1

+validate()

-id-formatId-iconPath

model::Attribute

modelling

+showItem()

-id-name

modelling::AttributeType

+showItem()+showList()

-id-name

modelling::Category

query

+formatValue()

-id-name-TypeId

modelling::Format

0..* 10..* 1

+compare()

-type-value

query::Filter

+compare()

-operator

query::FilterType

0..*

1

+load()+save()+execute()

-title-author-dateUpdated-items

query::Query

-position-conceptId-attributeId-formatId-sortOrder-sortPosition

query::QueryItem

0..*

0..1

1 0..*

0..*1

1

*

0..*

1

AIS User InterfaceInternal Structure:

Modelling/Querying

Page 19: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Modelling Concepts With Icons

Page 20: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Relationships Between Concepts

Page 21: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Example – Further Education System

Page 22: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Resulting Application

Page 23: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Concept Categories

Page 24: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Choosing Icons

Page 25: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Choosing Icons

Page 26: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

What Makes a Good Icon?

• Right level of generality

• Simplicity

(a) Less general (b) More general

Page 27: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Searching for Icons

Broaden search by extending

to subclass

Broaden search by extending to

superclass

Narrow search by

restricting to subclass

Animal

Dog Cat

Terrier PersianSpaniel

Broaden search by extending to

related class

Relaxing Ontological Constraints to Find Related Concepts

Page 28: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Querying an AIS

• Specify what you want by selecting icons

Page 29: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Processing Queries

Application server (TomCat) running on server hardware

Generic ApplicationServer Component

(Java servlet)

ConceptualModel(XML)

Server

Business end user

Modeller

Web browser running on client hardware

Generic ApplicationUser Interface Component

(SWF)

Laptop

Modeller

XML data fileresiding on a file server

Data file(XML)

Server

Data file(XML)

Model file (XML)Data chunk (XML)

Updated datafile (XML)

Request for modelRequest for data

Model file (updated)Data chunk (updated)

Page 30: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

What Next?

• Get up to speed on– Adobe Flex (ActionScript)– XML– Entity-relationship modelling– UML

• Particularly class diagrams– Human-Computer Interface (HCI) & usability– Agile development methods

• I will provide some references

Page 31: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros.

Then

• Information specific to your project• Meetings next week• Project plans• Decide on roles• Requirements document• Iterative development and testing

– Start small and grow