information systems laboratory final year projects 2008-9 dr simon mcginnes evangelos kapros
Post on 20-Dec-2015
217 views
TRANSCRIPT
![Page 1: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/1.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/2.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/3.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/4.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/5.jpg)
Example
![Page 6: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/6.jpg)
Example
![Page 7: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/7.jpg)
Example
![Page 8: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/8.jpg)
Example
![Page 9: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/9.jpg)
Example
![Page 10: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/10.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/11.jpg)
• 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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/12.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/13.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/14.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/15.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/16.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/17.jpg)
AIS User Interface (Adobe Flex)
![Page 18: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/18.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/19.jpg)
Modelling Concepts With Icons
![Page 20: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/20.jpg)
Relationships Between Concepts
![Page 21: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/21.jpg)
Example – Further Education System
![Page 22: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/22.jpg)
Resulting Application
![Page 23: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/23.jpg)
Concept Categories
![Page 24: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/24.jpg)
Choosing Icons
![Page 25: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/25.jpg)
Choosing Icons
![Page 26: Information Systems Laboratory Final Year Projects 2008-9 Dr Simon McGinnes Evangelos Kapros](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/26.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/27.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/28.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/29.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/30.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022032611/56649d445503460f94a2166e/html5/thumbnails/31.jpg)
Then
• Information specific to your project• Meetings next week• Project plans• Decide on roles• Requirements document• Iterative development and testing
– Start small and grow