Software Systems Analysis A Research Area Overview
260 likes | 276 Vues
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.
Software Systems Analysis A Research Area Overview
E N D
Presentation Transcript
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