260 likes | 263 Views
This research overview provides an introduction to software systems analysis, covering topics such as data representation, behavior representation, prototyping, formalism, recent work, and future directions in the field.
E N D
Software Systems Analysis A Research Area Overview By Reema Al-Kamha Supported by NSF
Outline • Introduction • Data Representation • Behavior Representation • Prototyping • Formalism • Recent Work • Some Future Directions
Introduction • Software System • Systems Analysis • Modeling
Representation─Data • Conceptual Data Modeling • Knowledge Representation • Ontologies
Conceptual Data Modeling • Entity Relationship Model [Che76] • Object-Role Modeling [Hal01] • Object-Relationship Model [EKW92] • Unified Modeling Language [BRJ99]
Entity Relationship Model [Chen76] www.cs.yale.edu/homes/avi/db-book/db4/slide-dir/ch1.ppt
Knowledge Representation • Semantic Networks [GRI82] • Frames [Min75, FK85]
Semantic Networks [GRI82] users.aber.ac.uk/smg/Modules/COM6010-April-2004/ 03-03-semanticNetsAndFrames.ppt
Frames [Min75] users.aber.ac.uk/smg/Modules/COM6010-April-2004/ 03-03-semanticNetsAndFrames.ppt
Ontologies • Philosophy [Bun77] • Analysis and design information systems [WW90], based on Bunge’s ontology [Bun77, Bun79] • Ontology is an explicit specification of a shared conceptualization[Guber93]
Ontologies • Advantages • Facilitate the process of identifying system requirements • Improve the reliability of software systems • Facilitate the design of reusable systems • Knowledge representation • Ontolingua [Gru93] • CYC [LG90, LG95] • OWL [SWM04]
Representation─Behavior • Petri Nets [Pet62, Pet77] • Finite State Machines [Cho78] • Statecharts [Har87] • State Nets [EKW92]
Prototyping • Constructing a partial implementation of system • Two approaches: • Throwaway approach [DAV82, GOM83] • Evolutionary approach [MAS83]
Formalism • Mathematical based techniques for describing system properties • Formalism produces models that are: • Consistent • Complete • Unambiguous • Variety of formal specification languages such as CSP [Hoa85], VDM [JON91], and Z [Spi89] • Description Logics
Recent Work • Form-Oriented Analysis [DW04] • Using Fisheye Views to Support Systems Analysis [TSSO04] • Extreme Programming (XP) [Bec00]
Form-Oriented Analysis [DW04] Page diagram of the online seminar registration system
Form-Oriented Analysis [DW04] Form chart of the seminar registration system
Form-Oriented Analysis [DW04] Data model and data dictionary
(re)describe Customer Stories interact define interpret define Test Developers code errors create, refine Source Code Extreme Programming (XP) [Bec00]
Some Future Directions • Extreme Non-Programming (XNP) [Tony Morgan ISTA 2004] • Challenge to the Conceptual Models [Michael Carey ER2003]
Customer (re)describe Analyst review translate generate Model Human readable views generate generate Software Machine readable views Extreme Non-Programming (XNP)
Mike Carey’s ER2003 Challenge to theConceptual Modeling Community Produce a simple conceptual model that: • Works well with XML and XML Schema • Abstracts well for conceptual entities and relationships • Scales to handle both large data sets and complex object interrelationships • Allows for queries and defined views via XQuery • Accommodates heterogeneity
Summary • Overview of Systems Analysis • Data & Behavior Representation • Prototyping • Formalism • Recent Work & Some Future Directions