Using problem frames with distributed architectures: a case for cardinality on interfaces

Certain classes of problems amenable to description using Problem Frames, in particular ones intended to be implemented using a distributed architecture, can benefit by the addition of a cardinality specification on the domain interfaces. This paper presents an example of such a problem, demonstrates the need for relationship cardinality, and proposes a notation to represent cardinality on domain interfaces.

[1]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[2]  Robert L. Nord Meeting the Product Line Goals for an Embedded Real-Time System , 2000, IW-SAPF.

[3]  John Mylopoulos,et al.  From object-oriented to goal-oriented requirements analysis , 1999, CACM.

[4]  Craig Larman,et al.  Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process , 2001 .

[5]  Nenad Medvidovic,et al.  Focus: a light-weight, incremental approach to software architecture recovery and evolution , 2001, Proceedings Working IEEE/IFIP Conference on Software Architecture.

[6]  Fausto Giunchiglia,et al.  Modeling Early Requirements in Tropos: A Transformation Based Approach , 2001, AOSE.

[7]  Dewayne E. Perry,et al.  Transforming Goal Oriented requirements specifications into Architectural Prescriptions , 2001 .

[8]  Xavier Franch,et al.  Using Quality Models in Software Package Selection , 2003, IEEE Softw..

[9]  Liam O'Brien,et al.  Architecture Reconstruction Guidelines , 2001 .

[10]  John Mylopoulos,et al.  Information systems development through social structures , 2002, SEKE '02.

[11]  Bashar Nuseibeh,et al.  Relating software requirements and architectures using problem frames , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[12]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[13]  Barbara Paech,et al.  Rationale-Based Use Case Specification , 2002, Requirements Engineering.

[14]  Michael Jackson,et al.  The World and the Machine , 1995, 1995 17th International Conference on Software Engineering.

[15]  Mary Shaw,et al.  Abstractions for Software Architecture and Tools to Support Them , 1995, IEEE Trans. Software Eng..

[16]  Wolfgang Pree,et al.  Design Patterns for Object-Oriented Software Development , 1994, Proceedings of the (19th) International Conference on Software Engineering.

[17]  Mary Shaw,et al.  A field guide to boxology: preliminary classification of architectural styles for software systems , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).

[18]  Spencer Rugaber A tool suite for evolving legacy software , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[19]  Ivar Jacobson,et al.  Software Reuse: Architecture, Process And Organization For Business Success , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[20]  Sara Jones,et al.  Innovative Requirements Engineering Applied to ATM , 2003 .

[21]  Suzanne Robertson,et al.  Mastering the Requirements Process , 1999 .

[22]  Christopher Alexander,et al.  The Timeless Way of Building , 1979 .

[23]  Jun Han Specifying the Structural Properties of Software Documents , 1995 .

[24]  WenQian Liu,et al.  RULE-BASED DETECTION OF INCONSISTENCY IN SOFTWARE DESIGN , 2002 .

[25]  Eric Yu,et al.  Modelling Trust in the i* Strategic Actors Framework , 2000 .

[26]  John Leaney,et al.  Measuring the effectiveness of computer based systems: an open system measurement example , 2001, Proceedings. Eighth Annual IEEE International Conference and Workshop On the Engineering of Computer-Based Systems-ECBS 2001.

[27]  Xiaolei Qian,et al.  Correct Architecture Refinement , 1995, IEEE Trans. Software Eng..

[28]  Kent L. Beck,et al.  Embracing Change with Extreme Programming , 1999, Computer.

[29]  Philippe Massonet,et al.  Goal-directed elaboration of requirements for a meeting scheduler: problems and lessons learnt , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[30]  Cliff B. Jones,et al.  Software development - a rigorous approach , 1980, Prentice Hall international series in computer science.

[31]  John Leaney,et al.  Architecture-based performance analysis of the COLLINS class submarine open system extension (COSE) concept demonstrator (CD) , 2000, Proceedings Seventh IEEE International Conference and Workshop on the Engineering of Computer-Based Systems (ECBS 2000).

[32]  Martin S. Feather,et al.  A quantitative risk model for early lifecycle decision making , 2002 .

[33]  Stephen R. Schach Classical and Object-Oriented Software Engineering With Uml and Java , 1999 .

[34]  N. A. M. Maiden,et al.  A computational mechanism for parallel problem decomposition during requirements engineering , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[35]  Richard C. Holt,et al.  A hybrid process for recovering software architecture , 1996, CASCON.

[36]  Robert L. Nord,et al.  Software Architecture in Industrial Applications , 1995, 1995 17th International Conference on Software Engineering.

[37]  Roy Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures"; Doctoral dissertation , 2000 .

[38]  Barbara Paech,et al.  Systematic requirements recycling through abstraction and traceability , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[39]  Neil A. M. Maiden,et al.  Analogical retrieval in reuse-oriented requirements engineering , 1996, Softw. Eng. J..

[40]  Peter Kaiser,et al.  Evaluating Evolutionary Software Systems , 2002, PROFES.

[41]  John Mylopoulos,et al.  Towards requirements-driven information systems engineering: the Tropos project , 2002, Inf. Syst..

[42]  Klaus Buchenrieder,et al.  Model-Based Codesign , 1998, Computer.

[43]  Fausto Giunchiglia,et al.  Knowledge Level Software Engineering , 2001, ATAL.

[44]  Ron Jeffries,et al.  Extreme Programming Installed , 2000 .

[45]  Gill Smith,et al.  Object-oriented analysis , 1988, WADAS '88.

[46]  Naomi Miyake,et al.  Constructive Interaction and the Iterative Process of Understanding , 1986, Cogn. Sci..

[47]  Mark Klein,et al.  Experience with performing architecture tradeoff analysis , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[48]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[49]  Hans de Bruin,et al.  Documenting and Analyzing a Context-Sensitive Design Space , 2002, WICSA.

[50]  John Mylopoulos,et al.  Agent Oriented Software Development , 2003, OOIS.

[51]  Davor Svetinovic,et al.  Agile Architecture Recovery , 2002 .

[52]  Suresh L. Konda,et al.  Taxonomy-Based Risk Identification , 1993 .

[53]  Enid Mumford,et al.  Reengineering the Corporation: A Manifesto for Business Revolution , 1995 .

[54]  John Leaney,et al.  Architecture-based visualisation of computer based systems , 2002, Proceedings Ninth Annual IEEE International Conference and Workshop on the Engineering of Computer-Based Systems.

[55]  Barry W. Boehm,et al.  Requirements that Handle IKIWISI, COTS, and Rapid Change , 2000, Computer.

[56]  John Mylopoulos,et al.  A Social Organization Perspective on Software Architectures , 2001 .

[57]  Axel van Lamsweerde,et al.  Goal-Oriented Requirements Engineering: A Guided Tour , 2001, RE.

[58]  Giuliano Antoniol,et al.  Recovering Traceability Links between Code and Documentation , 2002, IEEE Trans. Software Eng..

[59]  Nenad Medvidovic,et al.  Measuring Product Line Architectures , 2001, PFE.

[60]  Ivar Jacobson,et al.  The Unified Software Development Process , 1999 .

[61]  Stephen Fickas,et al.  Goal-directed concept acquisition in requirements elicitation , 1991, Proceedings of the Sixth International Workshop on Software Specification and Design.

[62]  Shailey Minocha,et al.  Supporting Scenario-Based Requirements Engineering , 1998, IEEE Trans. Software Eng..

[63]  David Garlan,et al.  Style-based refinement for software architecture , 1996, ISAW '96.

[64]  John Wordsworth The CICS Application Programming Interface Definition , 1990, Z User Workshop.

[65]  Alexander Egyed Consistent Architectural Refinement and Evolution using the Unified Modeling Language , 2001 .

[66]  H. R. Simpson,et al.  Architecture for computer based systems , 1994, Proceedings 1994 Tutorial and Workshop on Systems Engineering of Computer-Based Systems.

[67]  Pascual González,et al.  Designing Web Sites by Using Design Patterns , 2002 .

[68]  Rick Kazman,et al.  A Software Architecture Reconstruction Method , 1999, WICSA.

[69]  Eric Yu,et al.  Agent orientation as a modelling paradigm , 2001, Wirtschaftsinf..

[70]  David A. Carrington,et al.  Object-Z: An Object-Oriented Extension to Z , 1989, FORTE.

[71]  Bashar Nuseibeh,et al.  Weaving Together Requirements and Architectures , 2001, Computer.

[72]  Barry M Horowitz The Importance of Architecture in DoD Software , 1994 .

[73]  Dewayne E. Perry A Product Line Architecture for a Network Product , 2000, IW-SAPF.

[74]  Rick Kazman,et al.  From requirements negotiation to software architecture decisions , 2005, Inf. Softw. Technol..

[75]  David Lorge Parnas,et al.  On the Design and Development of Program Families , 2001, IEEE Transactions on Software Engineering.

[76]  Bernhard Schätz,et al.  Tool Supported Specification and Simulation of Distributed Systems , 1998, PDSE.

[77]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[78]  Alan M. Davis,et al.  A comparison of techniques for the specification of external system behavior , 1988, CACM.

[79]  Martin Fowler,et al.  Patterns of Enterprise Application Architecture , 2002 .

[80]  Dewayne E. Perry,et al.  Dimensions of software evolution , 1994, Proceedings 1994 International Conference on Software Maintenance.

[81]  Paul Ward,et al.  Structured Development for Real-Time Systems , 1986 .

[82]  John Mylopoulos,et al.  Organizational Patterns for Early Requirements Analysis , 2003, CAiSE.

[83]  Nong Zhang THE UNIVERSITY OF TECHNOLOGY SYDNEY , 2005 .

[84]  John Mylopoulos,et al.  A Goal-Based Organizational Perspective on Multi-agent Architectures , 2001, ATAL.

[85]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[86]  Bernhard Thomé,et al.  Systems engineering: principles and practice of computer-based systems engineering , 1993 .

[87]  Claes Wohlin,et al.  Requirements Mean Decisions! – Research issues for understanding and supporting decision-making in Requirements Engineering , 2001 .

[88]  Rebecca Wirfs-Brock,et al.  Object-oriented design: a responsibility-driven approach , 1989, OOPSLA '89.

[89]  Dirk Riehle Composite design patterns , 1997, OOPSLA '97.

[90]  Felix Bachmann,et al.  Deriving Architectural Tactics: A Step Toward Methodical Architectural Design , 2003 .

[91]  Matthias Jarke,et al.  Toward Reference Models of Requirements Traceability , 2001, IEEE Trans. Software Eng..

[92]  Hugh C. Davis,et al.  Light hypermedia link services: a study of third party application integration , 1994, ECHT '94.

[93]  John F. Sowa,et al.  Knowledge Representation and Reasoning , 2000 .

[94]  Terry A. Kuykendall,et al.  Systems Architecting–Creating & Building Complex Systems , 2001 .

[95]  Roy T. Fielding,et al.  Principled design of the modern Web architecture , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[96]  Leonard J. Bass,et al.  Classifying architectural elements as a foundation for mechanism matching , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).

[97]  Ulrich Frank,et al.  Knowledge Management Systems: Essential Requirements and Generic Design Patterns , 2001 .

[98]  Richard C. Holt,et al.  A reference architecture for Web servers , 2000, Proceedings Seventh Working Conference on Reverse Engineering.

[99]  Axel van Lamsweerde,et al.  Managing Conflicts in Goal-Driven Requirements Engineering , 1998, IEEE Trans. Software Eng..

[100]  Jun Han TRAM: a tool for requirements and architecture management , 2001, Proceedings 24th Australian Computer Science Conference. ACSC 2001.

[101]  Kees M. van Hee,et al.  Framework for business process redesign , 1995, WETICE.

[102]  Martin Fowler,et al.  Analysis patterns - reusable object models , 1996, Addison-Wesley series in object-oriented software engineering.

[103]  D. Janaki Ram,et al.  An approach for pattern oriented software development based on a design handbook , 2000, Ann. Softw. Eng..

[104]  Eric Yu,et al.  From Requirements to Architectural Design –Using Goals and Scenarios , 2001 .

[105]  Betty H. C. Cheng,et al.  Requirements patterns for embedded systems , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[106]  W. T. Farris,et al.  Software requirements specifications , 1993 .

[107]  Klaus Schmid,et al.  Applying Product Line Concepts in Small and Medium-Sized Companies , 2000, IEEE Software.

[108]  Nenad Medvidovic,et al.  Modeling software architectures in the Unified Modeling Language , 2002, TSEM.

[109]  Kenneth M. Anderson,et al.  Using Open Hypermedia to Support Information Integration , 2001, OHS-7/SC-3/AH-3.

[110]  Felix Bachmann,et al.  Illuminating the Fundamental Contributors to Software Architecture Quality , 2002 .

[111]  Gregory D. Schumacher,et al.  IEEE Guide for Developing System Requirements Specifications , 1999 .

[112]  Leonard J. Bass,et al.  Quality Attribute Design Primitives and the Attribute Driven Design Method , 2001, PFE.

[113]  Mark Klein,et al.  Applicability of General Scenarios to the Architecture Tradeoff Analysis Method , 2001 .

[114]  Gerald W. Both,et al.  Object-oriented analysis and design with applications , 1994 .

[115]  John Mylopoulos,et al.  Software Architectures as Organizational Structures , 2001 .

[116]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[117]  John Mylopoulos,et al.  RULE-BASED DETECTION OF INCONSISTENCY IN UML MODELS , 2002 .

[118]  Meir M. Lehman,et al.  A Model of Large Program Development , 1976, IBM Syst. J..

[119]  Axel van Lamsweerde,et al.  Requirements engineering in the year 00: a research perspective , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[120]  Mikael Lindvall,et al.  Evaluating software architectures , 2004, Adv. Comput..

[121]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[122]  Olly Gotel,et al.  An analysis of the requirements traceability problem , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[123]  Uffe Kock Wiil,et al.  The HyperDisco approach to open hypermedia systems , 1996, HYPERTEXT '96.

[124]  강문설 [서평]「The Unified Modeling Language User Guide」 , 1999 .

[125]  Brian Foote,et al.  Designing Reusable Classes , 2001 .

[126]  Dewayne E. Perry,et al.  Architectural Prescriptions for Dependable Systems , 2002 .

[127]  Peter Gyngell,et al.  Process Innovation: Reengineering Work through Information Technology , 1994 .

[128]  Flávio Oquendo,et al.  /spl pi/-SPACE: a formal architecture description language based on process algebra for evolving software systems , 2000, Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering.

[129]  Fausto Giunchiglia,et al.  Agent- Oriented Software Development: A Case Study , 2001, SEKE.

[130]  Robert L. Nord,et al.  Applied Software Architecture , 1999, Addison Wesley object technology series.

[131]  Axel van Lamsweerde,et al.  Handling Obstacles in Goal-Oriented Requirements Engineering , 2000, IEEE Trans. Software Eng..

[132]  Bashar Nuseibeh,et al.  Weaving the Software Development Process Between Requirements and Architectures , 2001 .

[133]  John Mylopoulos,et al.  UML for Agent-Oriented Software Development: The Tropos Proposal , 2001, UML.

[134]  Alexander L. Wolf,et al.  Acm Sigsoft Software Engineering Notes Vol 17 No 4 Foundations for the Study of Software Architecture , 2022 .

[135]  Melody Moore Jackson Software Reuse: Silver Bullet? , 2001, IEEE Softw..

[136]  Kenneth M. Anderson,et al.  Towards large-scale information integration , 2002, ICSE '02.

[137]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[138]  James M. Neighbors,et al.  The Draco Approach to Constructing Software from Reusable Components , 1984, IEEE Transactions on Software Engineering.

[139]  Gerard G. Meszaros,et al.  A pattern language for pattern writing , 1997 .

[140]  Martin Höst,et al.  Exploring bottlenecks in market-driven requirements management processes with discrete event simulation , 2001, J. Syst. Softw..

[141]  Sooyong Park,et al.  Decisions not requirements: decision-centered engineering of computer-based systems , 1997, Proceedings International Conference and Workshop on Engineering of Computer-Based Systems.

[142]  Stephen Shaoyi Liao,et al.  Exploring Alternatives during Requirements Analysis , 2001, IEEE Softw..

[143]  Daniel Gross,et al.  Evolving system architecture to meet changing business goals: an agent and goal-oriented approach , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[144]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

[145]  Dick Stenmark,et al.  Turning tacit knowledge tangible , 2000, Proceedings of the 33rd Annual Hawaii International Conference on System Sciences.

[146]  Bashar Nuseibeh,et al.  Expressing the relationships between multiple views in requirements specification , 1993, ICSE '93.

[147]  D.R. Chand,et al.  Essential systems analysis , 1986, Proceedings of the IEEE.

[148]  Neil A. M. Maiden,et al.  The Domain Theory for Requirements Engineering , 1998, IEEE Trans. Software Eng..

[149]  Angela Greiling Keane,et al.  NO SILVER BULLET , 2003 .

[150]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[151]  Don S. Batory,et al.  The design and implementation of hierarchical software systems with reusable components , 1992, TSEM.

[152]  Rick Kazman,et al.  View extraction and view fusion in architectural understanding , 1998, Proceedings. Fifth International Conference on Software Reuse (Cat. No.98TB100203).

[153]  A. Wayne Wymore,et al.  Systems engineering methodology for interdisciplinary teams , 1976 .

[154]  Jim Conallen,et al.  Building Web applications with UML , 1999 .

[155]  David Garlan,et al.  Using tool abstraction to compose systems , 1992, Computer.

[156]  Kasper Østerbye,et al.  The flag taxonomy of open hypermedia systems , 1996, HYPERTEXT '96.

[157]  정인기,et al.  [서평]「Applying UML and Patterns - An Introduction to Object-Oriented Analysis and Design」 , 1998 .

[158]  Alan M. Davis,et al.  Software requirements - analysis and specification , 1990 .

[159]  Hausi A. Müller,et al.  Structural Redocumentation: A Case Study , 1995, IEEE Softw..

[160]  Bran Selic,et al.  Using UML for Modeling Complex Real-Time Systems , 1998, LCTES.

[161]  G. P. Mullery,et al.  CORE - a method for controlled requirement specification , 1979, ICSE 1979.

[162]  E. James Whitehead,et al.  An architectural model for application integration in open hypermedia environments , 1997, HYPERTEXT '97.

[163]  Jonathan. Heales,et al.  Evolutionary and revolutionary maintenance of information systems: a theoretical and empirical analysis , 1998 .

[164]  Barry W. Boehm,et al.  Theory-W Software Project Management: Principles and Examples , 1989, IEEE Trans. Software Eng..

[165]  Barry W. Boehm,et al.  Applying WinWin to quality requirements: a case study , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[166]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[167]  Richard N. Taylor,et al.  A Component- and Message-Based Architectural Style for GUI Software , 1995, 1995 17th International Conference on Software Engineering.

[168]  Eila Niemelä,et al.  A Survey on Software Architecture Analysis Methods , 2002, IEEE Trans. Software Eng..

[169]  S. Lauesen Software Requirements Styles and Techniques , 2001 .

[170]  Alexander Egyed,et al.  A Scenario-Driven Approach to Trace Dependency Analysis , 2003, IEEE Trans. Software Eng..

[171]  Nenad Medvidovic,et al.  Reconciling software requirements and architectures: the CBSP approach , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[172]  Nenad Medvidovic,et al.  Refinement and Evolution Issues in Bridging Requirements and Architecture - The CBSP Approach , 2001 .