Information Systems Analysis and Design csc340 II Conceptual Modeling Engineering Software Models in Software Engineering Engineering What is Conceptual Modeling Modeling Origins 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 1 Information Systems Analysis and Design csc340 Engineering Software All engineering disciplines are founded on models that are analyzable and can predict the properties of the artifact being engineered Examples Electric circuits bridges car engines What kinds of models can we build for information systems And how do we analyze them We will look at modeling and analysis techniques for requirements and for designs 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 2 Page Information Systems Analysis and Design csc340 Conceptual Modeling Key problem Have to give an unambiguous easy to understand account of our understanding of an organization and how it works also how the new system will fit in that organization We can do so with English descriptions but such descriptions are often cumbersome incomplete ambiguous and can lead to misunderstandings see next two slides As an alternative we will use conceptual models also called visual models to describe proposed requirements and designs for the new system Conceptual models try to capture people s understanding conceptualization of what is being modeled Conceptual models are usually represented in terms of a graph structure 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 3 Information Systems Analysis and Design csc340 Natural Languages can be Ambiguous This is clause 4 from the UN Security Council resolution 1441 on Iraq Decides that false statements or omissions in the declarations submitted by Iraq pursuant to this resolution and failure by Iraq at any time to comply with and cooperate fully in the implementation of this resolution shall constitute a further material breach of Iraq s obligations and will be reported to the Council for assessment in accordance with paragraphs 11 and or 12 below The US apparently interprets this as meaning a material breach occurs if the declaration submitted by Iraq contains any false statements Other security council members interpret it as meaning the breach only occurs if Iraq also does not cooperate with the inspection process 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 4 Page Information Systems Analysis and Design csc340 What s the Problem The clause has the following logical structure A or B and C and D entails E where A false statements in the declarations submitted by Iraq B omissions in the declarations submitted by Iraq C failure by Iraq at any time to comply with this resolution D failure by Iraq at any time to cooperate fully in the implementation of this resolution E a further material breach of Iraq s obligations So the two proposed readings are as follows A or B and C and D entails E US interpretation A or B and C and D entails E other security council members interpretation 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 5 Information Systems Analysis and Design csc340 What is Conceptual Modeling Order Item Ship via Business Process Conceptual Modeling is modeling using a standardized graphical notation 2003 John Mylopoulos and Steve Easterbrook Computer System Conceptual Modeling 6 Page Information Systems Analysis and Design csc340 Origins There have been literally thousands of proposals for conceptual models in several different areas within and outside Computer Science Ross Quillian proposed in his PhD thesis semantic networks in order to model the structure of human memory 1966 Ole Johan Dahl proposed in 1967 Simula an extension of the programming language ALGOL 60 for simulation applications which require some world modeling Jean Robert Abrial proposed a semantic model in 1974 shortly followed by Peter Chen s Entity relationship model 1975 as advances over logical data models such as Codd s Relational model proposed only a few years before Doug Ross proposed in the mid 70s the Structured Analysis and Design Technique SADT as a language for communicating ideas The technique was used by Softech a Boston based company in order to specify requirements for software systems 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 7 Information Systems Analysis and Design csc340 Semantic Networks Animal isa has Feather Bird can fly isa Penguin can can t fly isa isa Fish can swim Mammal isa eats Shark Human Novel ideas Models are built out of concepts and associations Inheritance of attributes strict or default single or multiple Computation defined in terms of spreading activation e g discovering the meaning of horse food horse animal eat food horse animal madeOf meat food 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 8 Page Information Systems Analysis and Design csc340 Simula 1966 barberShop person customer person queue height barbers weight haircutPeriod height haircutPrice weight barber person coors serveCustomer getPayment newBS delBS coors enterQueue payBill newC delC haircutTime height salary weight coors giveHaircut newB DelB Ole Johan Dahl proposed it as an extension of the programming language ALGOL 60 for simulation applications A simulation program consists of classes and instances instances are partly data structures and partly processes Instances model the simulated application classes define common features of instances are organized into subclass hierarchies 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 9 Information Systems Analysis and Design csc340 The Entity Relationship Model Places PlacedBy Customer 1 M Order M Customers place orders each order contains many books Contains isContained M Book Novel ideas Assumes that application consists of entities and relationships ontological assumptions Shows how a conceptual schema can be mapped onto a logical one Abrial s semantic model was more akin to OO data models but did offer entities and relations too 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling 10 Page Information Systems Analysis and Design Structured Analysis and Design Technique Money SADT csc340 Seed Vegie Plan Budget Prices Weather Plan Budget Fertilizer Buy Supplies Seeds Cultivate Plants Pick Produce Vegetables Vegetables Extract Seeds Grow Vegetables Novel Ideas Model operating environment of a software system Application modeled in terms of data and activity Application models organized in terms of
View Full Document
Unlocking...