Design and Evolution of an Agent-Based CASE System for OOAD

Size: px
Start display at page:

Download "Design and Evolution of an Agent-Based CASE System for OOAD"

Transcription

1 Proceedings of ATS Design and Evolution of an -Based CASE System for OOAD Dong Liu, Kalaivani Subramaniam, Behrouz H. Far, and Armin Eberlein Department of Electrical and Computer Engineering University of Calgary 2500, University Drive, N.W. Calgary, Alberta, Canada, T2N 1N4 {liud, subrama, far, Abstract -based analysis and design is a prospering area of software engineering and several methodologies have been proposed. However, how to evolve the architecture of agentbased system during development is not well addressed. This paper presents 2 kinds of design evolution using a CASE system for OOAD as an example. The first kind of evolution is due to the change of business logic, and the second is to meet the requirements of implementation and maintenance. The behavior model, the role model and the robustness model for the CASE system are presented and compared. The robustness model can also be applied to other agent-based system. 1. Introduction Software agents have been developed for various purposes since the late 1980 s. However, there is, so far, no industry-standard definition for agent or software agent. Generally, an agent may process such properties as autonomous, interactive, intelligent, adaptive, mobile, coordinative and cooperative, etc. [1]. In all the properties, autonomous behavior, communication skills and knowledge based are key characteristics for a software agent. Software agents can be regarded as design patterns for software. The software system can be designed in an agent-based pattern, and be implemented using Object-Oriented (OO) languages, tools, and environments supporting OO. There are some approaches for agent-based analysis and design [2-4]. However, some issues about agent-based system design are not well addressed in those approaches. The refactoring of agent-based system architecture is such a problem. This paper presents two kinds of evolution of agent-based system architecture, using a CASE tool as a case study. A CASE (Computer-Aided Software Engineering) tool has been developed for requirements elicitation and analysis, use-case realization and class modeling. The tool acts as an assistant for various developer roles in OO software development. Because the tool is required to be knowledge-based, interactive and automatic, we apply agent-based paradigm to analyze and design it. The evolution of the designs is presented in this paper.

2 Proceedings of ATS The architecture of an agent-based system is affected by the business logic and the requirements of implementation and maintenance. The paper consists of 5 sections. The first section introduces the background. The structure of the system in a behavior-decomposed way is discussed in Section 2. A role model is presented in Section 3. Section 4 discusses a robustness model for the system. Section 5 concludes the paper. 2. Original Model The system architecture is affected by the business logic that they will implement. At first the agent system was designed in a behavior-decomposed method to support the Object Model Creation Process (OMCP). 2.1 Object Model Creation Process The Object Model Creation Process (OMCP) is a widely applied methodology to elicit objects and build a class model from requirements [5]. The overview of OMCP is shown in Fig. 1. The stakeholder requests for the system under discussion are captured through interviews or other methods and transformed into requirements. The objects, their attributes, associations and behaviors are identified from the requirements and the object model is generated. The object model is refined with inheritance relationships added and the class model is generated. The implementation of the system under discussion can be started based on the class model. All the activities are supported by the developer s the domain knowledge and experiences. Wahono and Far developed the Object-Based Formal Specification (OBFS) to specify the requirements [6]. OBFS is composed of Description Statements (DS), Collaborative Statements (CS), Attributive Statements (AS), Behavioral Statements (BS), and Inheritance Statements (IS). Objects and the associations between them can be identified from CS; objects attributes can be identified from AS; objects behavior from BS; and Stakeholder Domain knowledge Real-world experience User Interviews Generate Requests Identifying Objects, Attributes, Associations and Behaviours Object Model Creation Process Object Model Domain knowledge Real-world experience User Interviews Refining with Inheritance Class Model Implementation the inheritances between objects from IS. Fig. 8. The Object Model Creation Process (OMCP) [6]

3 Proceedings of ATS Behavior Model The CASE system s behavior can be decomposed as follows: Acquire requirements Identify the objects Identify the objects attributes Identify the objects associations Identify the objects behaviors Refine the object model with inheritance The tasks are assigned to various agents, and a model is created as shown in Fig. 2. The system consists of six types of agents, each of which carries out one of the tasks listed above. The OMCP was modified based on the Rational Unified Process (RUP), and the agent-based system architecture needs to be evolved. The evolved architecture is discussed in the next section. Object Specifications Requirement Acquisition Attribute Association Object Refinement Class Model Behavior Fig. 2. The original architecture of the CASE tool. The input and output of the system are requirements specifications and the class model respectively 3. Evolution with the Business Logic We developed OMCP based on RUP for natural language requirements elicitation and specifying, object identification and class modeling. Various developer roles are involved in the method, and the CASE tool needs to play those roles in the process. A role model is designed and discussed in this section. 3.1 Method based on RUP RUP provides guidelines, templates and examples for requirements elicitation and specifying, object identification and class modeling [7]. OMCP is developed based on RUP. The artefacts in requirements phrase are stakeholder requests and use-case model. The artefacts in analysis phrase are robustness diagrams and collaboration diagrams, and those in design phrase are class diagrams representing the class model. The activities are

4 Proceedings of ATS to find the actors and use cases, to structure use cases, to specify the use cases, use case analysis and class design. The method is shown in Fig Role Model A role model is designed for the tool. Roles and role models are abstraction and decomposition mechanisms in object-oriented paradigms [8]. Role models are widely used for agent-based system analysis and design [4]. A role is identified by its responsibilities and collaborations with the environment. The responsibilities define the role s activities. The collaborations define the communication between the role and the environment including the input and output messages. Stakeholder System Analyst Find Actors and Use Cases Actors and Use cases Specifier Structure Use Cases Specify Use Cases Use case Diagrams Use case specifications CheckPoint Designer Use Cases Analysis Analysis Model Analysis & Design Architect Class Design Architecture Analysis Design Model CheckPoint Fig. 3. The developed OMCP based RUP The developer roles in Fig. 3 are modeled by agent roles listed in Table 1. Besides the collaborations listed in the table, all the roles need to deal with interactions with the user. An agent role is introduced for knowledge storage and supplement. The system model with such roles is shown in Fig. 4. SystemAnalyst Specifier Analyst ClassDesigner Developer Requirement Analysismodel Knowledge Supplier Fig. 4. A role model of the CASE tool

5 Proceedings of ATS Table 1. roles for the CASE tool. Name Responsibilities Collaborations System Analyst Find actors and use cases Send messages to US (SA) Structure use cases Use-case Specifier (US) Specify use cases Get messages from SA and to RR (RR) Use-case Analyst (UA) Analysis model (AR) Class Designer (CD) Review the use-case model Realize the use cases Review the analysis model Design the class model Send messages to UA and to US Get messages from AR Get messages from US and to AR Send message to CD and to UA Get messages from UA Send information to the user 4. Evolution for Implementation and Maintenance A model is not only for analysis and design, but also for implementation, management and even maintenance. A good model will be easy to implement and convenient to manage. Moreover, the model should be robust to the changing requirements. A robustness model to meet such needs is discussed in this section. 4.1 of Implementation and Maintenance Visual modeling is an important feature of current software analysis and design tools. The diagrams generated by the CASE tool need to be visualized in UML (Unified Modeling Language). The tool is integrated with Rational Rose to visualize the diagrams. If every agent needs to implement the interface to Rose, the system will be very complex. The user needs to start and stop the system, input information, see the output and configure the system through user interfaces. The system needs to manage the data including the knowledge, the input information from the user or other systems, the generated artefacts and the messages transferred between agents. To implement user interfaces and date management in each agent will also increase the complexity of the system. The system may be modified later to meet new requirements. For those who have no Rational Rose installed in their system, diagram visualization in a general application like a web browser will be expected. The OMG UML specification has been updated, so the method and the artefacts also need to be updated according to the specification. If the tool is implemented as the model introduced in Section 3, then all the agents need to be modified for these requirements.

6 Proceedings of ATS Robustness Model In the Objectory methodology, Jacobson introduces a robust structure for OO systems [9]. The idea is to model a system in three types of objects: boundary objects for interfaces, entity objects for information and control objects for behaviors. Coad introduced a 4- layer structure for OO systems: problem domain layer for the business logic, user interface layer for user interfaces, data management layer for date storage and management and system interface layer for external interface [10]. We develop a robustness agent model for the CASE tool based on these ideas. This model can also be used for other agent systems. The model is shown in Fig. 5. The Role models the business logic; the UI is responsible for user interfaces; the Data is responsible for date storage and management; and the SI agent is responsible for interface to the support system. Role UI SI User Data Fig. 5. A robustness agent model Support System The responsibilities and collaborations of the agents introduced in Section 3 are decomposed in the robustness model. To implement the tool using OO languages, the agents can be structured by generalization relationships in a hierarchy shown in Fig. 6. If user interfaces or system interfaces are to be changed, the developer just needs to modify the corresponding UI or SI without affecting the Role. This feature can be achieved using a unique communication language, e.g. XML, which can separate the content and the representation of information. The updated agent can cooperate with the old ones side by side in the system by this means. UI Role SI Data System Analyst Analysismodel Knowledge Supplier Specifier Analyst Class Designer Fig. 6. The agent hierarchy for the CASE tool 5. Conclusion The design and evolution of a CASE tool are presented in this paper. The design of an agent-based system is affected by two factors: one is the business logic, based on which

7 Proceedings of ATS either a behavior model or a role model may be created; the other is the requirements of implementation and maintenance, for which a robustness agent model is proposed. The robustness model can reduce the couplings between agents, and the system will be robust to the changing requirements. How to build agent models for implementation and cooperation with non-agent systems are the problems that need more researches. References [1] OMG Platform Special Interest Group: Technology Green Paper. Object Management Group (2000) Available: [2] Wooldridge, M., Jennings, N. R., Kinny, D.: The Gaia Methodology for - Oriented Analysis and Design. Journal of Autonomous s and Multi- Systems. 3(3) (2000) [3] Brazier, F., Dunin-Keplicz, B., Jennings, N. R., Treur, J.: DESIRE: Modelling Multi- Systems in a Compositional Formal Framework. International Journal of Cooperative Information Systems. 6(1) (1997) [4] Kendall, E.A.: Role modeling for agent system analysis, design, and implementation. Concurrency, IEEE. 8 (2) (2000) [5] Booch, G.: Object oriented design with applications. The Benjamin Cummings Publishing Company. (1991) [6] Wahono, R.S., Far, B.H.: A Framework of Object and Refinement Process in Object-Oriented Analysis and Design. Proceedings of the 1st IEEE International Conference on Cognitive Informatics. Calgary, Canada, (2002) [7] Kruchten, P.: The Rational Unified Process: An Introduction, 2 ed. Addison- Wesley. (2000) [8] Riehle, D., Gross, T.: Role Model Based Framework Design and Integration. Proc Conf. Object-Oriented Programming Systems, Languages and Applications. ACM Press, New York, (1998) [9] Jacobson, I.: Object-Oriented Software Engineering: A Use Case Driven Approach. Addison-Wesley. (1992) [10] Palmer, S. R., Felsing, J. M.: A Practical Guide to Feature-Driven Development. Prentice Hall. (2002)

Object-Oriented Analysis and Design Using UML (OO-226)

Object-Oriented Analysis and Design Using UML (OO-226) Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review 1 Responsibility-Driven Design (RDD) Introduced in 1990; a UML-based

More information

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802 UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

Agent-Oriented Software Engineering

Agent-Oriented Software Engineering Agent-Oriented Software Engineering Lin Zuoquan Information Science Department Peking University lz@is.pku.edu.cn http://www.is.pku.edu.cn/~lz/teaching/stm/saswws.html Outline Introduction AOSE Agent-oriented

More information

Information Systems Development Methodologies

Information Systems Development Methodologies Information Systems Development Methodologies 20 23..............1 23..... 1.1 23...... 2.1 23..... 3.1 24......... 4.1 24... 5.1 25....2 25... Classical Approach 1.2 26... Structured Approach 2.2 27..

More information

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML Tetsuro Katayama Department of Computer Science and Systems Engineering, Faculty of Engineering, Miyazaki University

More information

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling User Centred Design 09 INTERACTION ARCHITECTURAL MODELING Lecture 9 Interaction Architectureal Modeling PREVIOUS LESSON(S) Synthetizing User Research Personas Actors / User Roles Scenarios Essential Use

More information

Introduction to Information Systems (IS)

Introduction to Information Systems (IS) Introduction to Information Systems (IS) 2 5.......... 5..... 1.1 5......... 2.1 5..... 3.1 6...... 4.1 6...... 5.1 7... Information Systems and their Characteristics 9... Types of Information Systems

More information

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis -- 1 Object-Oriented Analysis Object-Oriented

More information

Unit Wise Questions. Unit-1 Concepts

Unit Wise Questions. Unit-1 Concepts Unit Wise Questions Unit-1 Concepts Q1. What is UML? Ans. Unified Modelling Language. It is a Industry standard graphical language for modelling and hence visualizing a blue print of all the aspects of

More information

An Agent Modeling Language Implementing Protocols through Capabilities

An Agent Modeling Language Implementing Protocols through Capabilities An Agent Modeling Language Implementing Protocols through Capabilities Nikolaos Spanoudakis 1,2 1 Technical University of Crete, Greece nikos@science.tuc.gr Pavlos Moraitis 2 2 Paris Descartes University,

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Group Project An Agent-based System for Job Finding

Group Project An Agent-based System for Job Finding Course Number: SENG 609.22 Session: Fall, 2003 Document Name: An agentbased system for job finding Course Name: Agent-based Software Engineering Department: Electrical and Computer Engineering Document

More information

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS LESSON PLAN (2017-2018) Course / Branch : BCA Total Hours : 45 Subject Name : OBJECT ORIENTED

More information

3.0 Object-Oriented Modeling Using UML

3.0 Object-Oriented Modeling Using UML 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: Introduction to UML Summary: History of OOAD leading to UML UML Diagrams: Overview UML Models in the Objectory Software Development Process Literature:

More information

3. Agent-Oriented Methodologies Part 2: The PROMETHEUS methodology.

3. Agent-Oriented Methodologies Part 2: The PROMETHEUS methodology. Multiagent Syste ems Design (MASD D) Part 2: The PROMETHEUS methodology. https://kemlg.upc.edu Javier Vázquez-Salceda MASD Methodological Extensions to Object-Oriented Approaches A means for agent technologies

More information

Designing Component-Based Architectures with Rational Rose RealTime

Designing Component-Based Architectures with Rational Rose RealTime Designing Component-Based Architectures with Rational Rose RealTime by Reedy Feggins Senior System Engineer Rational Software Rose RealTime is a comprehensive visual development environment that delivers

More information

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language?

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? A few observations, opinions, pros & cons COMP 320 / 420 Spring, 2018 Mr. Weisert Where did the UML come from? Object-oriented

More information

MEMOCenterNG A full-featured modeling environment for organization modeling and model-driven software development

MEMOCenterNG A full-featured modeling environment for organization modeling and model-driven software development MEMOCenterNG A full-featured modeling environment for organization modeling and model-driven software development Jens Gulden and Prof. Dr. Ulrich Frank University Duisburg-Essen, Universitaetsstr. 9,

More information

ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL

ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL INTERNATIONAL DESIGN CONFERENCE - DESIGN 2000 Dubrovnik, May 23-26, 2000. ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL N. Pavković, D. Marjanović Keywords: object oriented methodology, design process

More information

Rational Software White paper

Rational Software White paper Unifying Enterprise Development Teams with the UML Grady Booch Rational Software White paper 1 There is a fundamental paradox at play in contemporary software development. On the one hand, organizations

More information

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

UNIT-I Introduction of Object Oriented Modeling

UNIT-I Introduction of Object Oriented Modeling UNIT-I Introduction of Object Oriented Modeling - Prasad Mahale Object Oriented Modeling and Reference Books: Design 1. Grady Booch, James Rumbaugh, Ivar Jacobson Unified Modeling Language User Guide,

More information

A Design Rationale Representation for Model-Based Designs in Software Engineering

A Design Rationale Representation for Model-Based Designs in Software Engineering A Design Rationale Representation for Model-Based Designs in Software Engineering Adriana Pereira de Medeiros, Daniel Schwabe, and Bruno Feijó Dept. of Informatics, PUC-Rio, Rua Marquês de São Vicente

More information

Software Engineering with Objects and Components Open Issues and Course Summary

Software Engineering with Objects and Components Open Issues and Course Summary Software Engineering with Objects and Components Open Issues and Course Summary Massimo Felici Software Engineering with Objects and Components Software development process Lifecycle models and main stages

More information

Component based method for enterprise application design

Component based method for enterprise application design Component based method for enterprise application design Emmanuel Renaux Trigone Laboratory University of Lille, France emmanuel.renaux@univ-lille1.fr Eric Lefebvre École de technologie supérieure Montréal,

More information

A Framework for Converting Classical Design to Reusable Design

A Framework for Converting Classical Design to Reusable Design A Framework for Converting Classical Design to Reusable Design Abdul Khader Jilani 1, Dr. Syed Abdul Sattar 2 1 Research Scholar, Rayalaseema University, Kurnool, Andhra Pradesh, India 2 Dean, Royal Institute

More information

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten Architectural Blueprint The 4+1 View Model of Software Architecture Philippe Kruchten Model What is a model? simplified abstract representation information exchange standardization principals (involved)

More information

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation

More information

System Structure Modeling

System Structure Modeling System Structure Modeling 108 111....... 111..... 1.1 111...... 2.1 112... 3.1 112..... 4.1 112... 5.1 113... System Structure Models 113... Classes 1.2 114... Attributes 2.2 114... Methods 3.2 114...

More information

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML D. Beltran*, LLS, Barcelona, Spain M. Gonzalez, CERN, Geneva, Switzerlan Abstract CELLS (Consorcio para la construcción, equipamiento

More information

Software Engineering

Software Engineering Software Engineering A systematic approach to the analysis, design, implementation and maintenance of software. Software Development Method by Jan Pettersen Nytun, page 1 Software Engineering Methods Most

More information

OO Analysis and Design with UML 2 and UP

OO Analysis and Design with UML 2 and UP OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language

More information

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT Cléver Ricardo Guareis de Farias, Marten van Sinderen and Luís Ferreira Pires Centre for Telematics and Information Technology (CTIT) PO Box

More information

Pattern for Structuring UML-Compatible Software Project Repositories

Pattern for Structuring UML-Compatible Software Project Repositories Pattern for Structuring UML-Compatible Software Project Repositories Pavel Hruby Navision Software a/s Frydenlunds Allé 6 2950 Vedbaek, Denmark E-mail: ph@navision.com Web site: www.navision.com/services/methodology/default.asp

More information

System Architecture Design

System Architecture Design System Architecture Design 158 161........1 161..... 1.1 161...... 2.1 162..... 3.1 162..... 4.1 162... 5.1 163... Moving from Analysis to Design.2 164... System Architecters.3 164... Server-based Architecture

More information

Software Development. Modular Design and Algorithm Analysis

Software Development. Modular Design and Algorithm Analysis Software Development Modular Design and Algorithm Analysis Functional Decomposition Functional Decomposition in computer science, also known as factoring, refers to the process by which a complex problem

More information

Distributed Expert System Architecture for Automatic Object-Oriented. Software Design

Distributed Expert System Architecture for Automatic Object-Oriented. Software Design Distributed Expert System Architecture for Automatic Object-Oriented Software Design Romi Satria Wahono and Behrouz H. Far Department of Information and Computer Sciences, Saitama University Email: romi@cit.ics.saitama-u.ac.jp

More information

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY-621105. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 1301-OBJECT ORIENTED ANALYSIS AND

More information

Software Engineering

Software Engineering Software Engineering Object-Oriented Analysis and Design and Modeling with UML Assoc. Prof. Marenglen Biba MSc in Computer Science, UoG-UNYT Foundation Programme 3-1 Material Get the material from http://www.marenglenbiba.net/foundprog/

More information

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software

More information

TESTING MULTI-AGENT SYSTEMS FOR DEADLOCK DETECTION BASED ON UML MODELS

TESTING MULTI-AGENT SYSTEMS FOR DEADLOCK DETECTION BASED ON UML MODELS TESTING MULTI-AGENT SYSTEMS FOR DEADLOCK DETECTION BASED ON UML MODELS Nariman Mani Vahid Garousi Behrouz H. Far Department of Electrical and Computer Engineering Schulich School of Engineering, University

More information

Integrating Systems and Software Engineering Concepts in AP-233

Integrating Systems and Software Engineering Concepts in AP-233 Integrating Systems and Software Engineering Concepts in AP-233 Asmus Pandikow, Erik Herzog, Anders Törne Real-Time Systems Laboratory Linköpings Universitet 581 83 Linköping, Sweden E-mail: {asmpa, erica,

More information

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212 Index A abstract requirements, 10 activity diagram section (Use Case -144 actors identifying, 130-131 relationships, generalization between, 137 use cases, 133-135 Actual completion date attribute actual

More information

MSc programme (induction week) Department of Informatics INTRODUCTION TO UML

MSc programme (induction week) Department of Informatics INTRODUCTION TO UML MSc programme (induction week) Department of Informatics INTRODUCTION TO UML Some of this material is based on Bernd Bruegge and Allen H. Dutoit (2009) Object-Oriented Software Engineering: Using UML,

More information

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching Journal of Physics: Conference Series PAPER OPEN ACCESS Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching To cite this article: Zhaojun Yu and Zhan Xiong

More information

OBJECT-ORIENTED SOFTWARE DEVELOPMENT Using OBJECT MODELING TECHNIQUE (OMT)

OBJECT-ORIENTED SOFTWARE DEVELOPMENT Using OBJECT MODELING TECHNIQUE (OMT) OBJECT-ORIENTED SOFTWARE DEVELOPMENT Using OBJECT MODELING TECHNIQUE () Ahmed Hayajneh, May 2003 1 1 Introduction One of the most popular object-oriented development techniques today is the Object Modeling

More information

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Dhirubhai Ambani Institute for Information and Communication Technology, Gandhinagar, Gujarat, India Email:

More information

INFORMS 4th Conference on Information Systems and Technology. Generalizations as Data and Behavior Abstractions

INFORMS 4th Conference on Information Systems and Technology. Generalizations as Data and Behavior Abstractions INFORMS 4th Conference on Information Systems and Technology Generalizations as Data and Behavior Abstractions,..- Dale L. Lunsford The University of Southern Mississippi, College of Business Administration,

More information

Object-Oriented Analysis and Design Using UML

Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using UML An Introduction to Unified Process and Design Patterns Mahesh P. Matha Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using

More information

Software Engineering from a

Software Engineering from a Software Engineering from a modeling perspective Robert B. France Dept. of Computer Science Colorado State University USA france@cs.colostate.edu Softwaredevelopment problems Little or no prior planning

More information

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture UML Modeling Sumantra Sarkar ssarkar@cis.gsu.edu 29 th June 2010 CIS 8090 Managing Enterprise Architecture All diagrams and definitions used in this presentation have been acknowledged in the reference

More information

Open Work of Two-Hemisphere Model Transformation Definition into UML Class Diagram in the Context of MDA

Open Work of Two-Hemisphere Model Transformation Definition into UML Class Diagram in the Context of MDA Open Work of Two-Hemisphere Model Transformation Definition into UML Class Diagram in the Context of MDA Oksana Nikiforova and Natalja Pavlova Department of Applied Computer Science, Riga Technical University,

More information

Dimensions for the Separation of Concerns in Describing Software Development Processes

Dimensions for the Separation of Concerns in Describing Software Development Processes Dimensions for the Separation of Concerns in Describing Software Development Processes Pavel Hruby Navision Software Frydenlunds Allé 6 DK-2950 Vedbæk, Denmark ph@navision.com http://www.navision.com,

More information

index_ qxd 7/18/02 11:48 AM Page 259 Index

index_ qxd 7/18/02 11:48 AM Page 259 Index index_259-265.qxd 7/18/02 11:48 AM Page 259 Index acceptance testing, 222 activity definition, 249 key concept in RUP, 40 Actor artifact analysis and iterative development, 98 described, 97 136 in the

More information

5 Object Oriented Analysis

5 Object Oriented Analysis 5 Object Oriented Analysis 5.1 What is OOA? 5.2 Analysis Techniques 5.3 Booch's Criteria for Quality Classes 5.4 Project Management and Iterative OOAD 1 5.1 What is OOA? How to get understanding of what

More information

Keywords: Abstract Factory, Singleton, Factory Method, Prototype, Builder, Composite, Flyweight, Decorator.

Keywords: Abstract Factory, Singleton, Factory Method, Prototype, Builder, Composite, Flyweight, Decorator. Comparative Study In Utilization Of Creational And Structural Design Patterns In Solving Design Problems K.Wseem Abrar M.Tech., Student, Dept. of CSE, Amina Institute of Technology, Shamirpet, Hyderabad

More information

Introduction to Software Engineering. 5. Modeling Objects and Classes

Introduction to Software Engineering. 5. Modeling Objects and Classes Introduction to Software Engineering 5. Modeling Objects and Classes Roadmap > UML Overview > Classes, attributes and operations > UML Lines and Arrows > Parameterized Classes, Interfaces and Utilities

More information

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

History of object-oriented approaches

History of object-oriented approaches Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented

More information

System Analysis and Design

System Analysis and Design System Analysis and Design 1 Introduction to Software Engineering Building Software is a complex exercise. Software is produced in several stages. Each stage attempts to deal with a different aspect of

More information

Model Driven Development Unified Modeling Language (UML)

Model Driven Development Unified Modeling Language (UML) Model Driven Development Unified Modeling Language (UML) An Overview UML UML is a modeling notation standardized by OMG (proposal 1997, ver.1.1 in 1998, ver. 2.0 in 2004) now in 2.4.1 mature based on notations

More information

Oral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer

Oral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer Unit-1 Concepts Oral Question/Assignment/Gate Question with Answer The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering Object Management Group (OMG)

More information

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships.

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships. Q 1) Attempt all the following questions: (a) Define the term cohesion in the context of object oriented design of systems? (b) Do you need to develop all the views of the system? Justify your answer?

More information

Object Oriented Analysis and Design - Part2(Design)

Object Oriented Analysis and Design - Part2(Design) Object Oriented Analysis and Design - Part2(Design) Exam A QUESTION 1 Which statement is true about elements within the subsystem and public visibility? A. Only the subset of elements that define the subsystems

More information

The Analysis and Design of the Object-oriented System Li Xin 1, a

The Analysis and Design of the Object-oriented System Li Xin 1, a International Conference on Materials Engineering and Information Technology Applications (MEITA 2015) The Analysis and Design of the Object-oriented System Li Xin 1, a 1 Shijiazhuang Vocational Technology

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

A UML-based Methodology for Hypermedia Design

A UML-based Methodology for Hypermedia Design A UML-based Methodology for Hypermedia Design Rolf Hennicker, Nora Koch,2 Institute of Computer Science Ludwig-Maximilians University of Munich Oettingenstr. 67, D-80538 München, Germany {hennicke,kochn}@informatik.uni-muenchen.de

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : , Course Code : MCS-032 Course Title : Object Oriented Analysis and Design Assignment Number : MCA (3)/032/Assign/2014-15 Assignment Marks : 100 Weightage : 25% Last Dates for Submission : 15th October,

More information

Improving System Usability Through the Automation of User's Routine Intentions: an Image Edition Tool Case Study

Improving System Usability Through the Automation of User's Routine Intentions: an Image Edition Tool Case Study Improving System Usability Through the Automation of User's Routine Intentions: an Image Edition Tool Case Study Alejandro C. Frery, André R. G. do A. Leitão, André W. B. Furtado, Fernando da C. A. Neto,

More information

Progress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development

Progress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development Progress Report Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) CS 4354 Summer II 2014 Jill Seaman So far we have learned about the tools used in object-oriented

More information

Journal of Information Technology Impact

Journal of Information Technology Impact Journal of Information Technology Impact Vol. 3, No. 1, pp. 25-44, 2003 Bogdan D. Czejdo 1 Loyola University Louisiana, USA The Impact of UML Class Diagrams on Knowledge Modeling, Discovery and Presentations

More information

Module Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation

Module Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation Module Outline Fundamentals of Object Positioning Object Oriented Analysis Fundamentals of Object 1. Encapsulation 2. Abstraction 3. Inheritance 4. Polymorphism The need of Modeling Unified modeling language

More information

UML-Based Conceptual Modeling of Pattern-Bases

UML-Based Conceptual Modeling of Pattern-Bases UML-Based Conceptual Modeling of Pattern-Bases Stefano Rizzi DEIS - University of Bologna Viale Risorgimento, 2 40136 Bologna - Italy srizzi@deis.unibo.it Abstract. The concept of pattern, meant as an

More information

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far University of Calgary Department of Electrical and Computer Engineering SENG 609.23: Object Oriented Analysis and Design Behrouz Homayoun Far Evaluation Test () 20:00 20:30 PM Instructions: 1. This booklet

More information

COST ESTIMATION FOR DISTRIBUTED SYSTEMS USING USE CASE DIAGRAM

COST ESTIMATION FOR DISTRIBUTED SYSTEMS USING USE CASE DIAGRAM S. V. Pingale et al. : Cost Estimation for Distributed Systems using Use Case Diagram Journal of Advances in Engineering Science 41 Section C (3), July - December 2010, PP 41-48 COST ESTIMATION FOR DISTRIBUTED

More information

CS:2820 (22C:22) Object-Oriented Software Development

CS:2820 (22C:22) Object-Oriented Software Development The University of Iowa CS:2820 (22C:22) Object-Oriented Software Development! Spring 2015 Software Complexity by Cesare Tinelli Complexity Software systems are complex artifacts Failure to master this

More information

An Extension of the Use Case Diagram to Model Context-aware Applications

An Extension of the Use Case Diagram to Model Context-aware Applications An Extension of the Use Case Diagram to Model Context-aware Applications Ahmed Al-alshuhai Software Technology Research Laboratory De Montfort University The Gateway, Leicester LE1 9BH, UK p07143453@myemail.dmu.ac.uk

More information

How and Why to Use the Unified Modeling Language. among software components, architectural-based

How and Why to Use the Unified Modeling Language. among software components, architectural-based This article addresses the Unified Modeling Language and its purpose, constructs, and application to defense software development applications. The Unified Modeling Language (UML) is a notation that can

More information

Research Review on Basic Principles of Unified Modelling Language

Research Review on Basic Principles of Unified Modelling Language Research Review on Basic Principles of Unified Modelling Language Agha Salman Haider Sr Lecturer, Jazan University, Saudi Arabia Abstract This paper presents review of concepts, ideas and the introduction

More information

BDSA Introduction to OOAD. Jakob E. Bardram

BDSA Introduction to OOAD. Jakob E. Bardram BDSA Introduction to OOAD Jakob E. Bardram Programming is Fun Developing Quality Software is Hard. Craig Larman in [OOAD] book 2 Object-Oriented Analysis & Design (OOAD) This Lecture Unified Modeling Language

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

A Model Transformation from Misuse Cases to Secure Tropos

A Model Transformation from Misuse Cases to Secure Tropos A Model Transformation from Misuse Cases to Secure Tropos Naved Ahmed 1, Raimundas Matulevičius 1, and Haralambos Mouratidis 2 1 Institute of Computer Science, University of Tartu, Estonia {naved,rma}@ut.ee

More information

Unified model of interaction: use cases and scenarios engineering

Unified model of interaction: use cases and scenarios engineering IJCSNS International Journal of Computer Science and Network Security, VOL.8 No.12, December 2008 203 Unified model of interaction: use cases and scenarios engineering Abdeslam Jakimi and Mohammed El Koutbi

More information

CHAPTER 9 DESIGN ENGINEERING. Overview

CHAPTER 9 DESIGN ENGINEERING. Overview CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative

More information

Applying ISO/IEC Quality Model to Quality Requirements Engineering on Critical Software

Applying ISO/IEC Quality Model to Quality Requirements Engineering on Critical Software Applying ISO/IEC 9126-1 Quality Model to Quality Engineering on Critical Motoei AZUMA Department of Industrial and Management Systems Engineering School of Science and Engineering Waseda University azuma@azuma.mgmt.waseda.ac.jp

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 4: Object-Oriented Methodologies Goals Object-Oriented Methodologies The Rumbaugh et al. OMT The Booch methodology Jacobson's

More information

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I Introduction to OOAD What is OOAD? What is UML? What are the United process(up) phases - Case study the NextGen POS system, Inception -Use case Modeling

More information

Checking consistency between architectural models using SPIN

Checking consistency between architectural models using SPIN ing consistency between architectural models using SPIN Paola Inverardi & Henry Muccini & Patrizio Pelliccione Dipartimento di Matematica Universitá dell Aquila - Via Vetoio, 1 67100 L Aquila, Italy finverard,

More information

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.sc(CST) Semester / Year : VI(EVEN)/III Subject

More information

i219 Software Design Methodology 1. Overview of software design methodology Kazuhiro Ogata (JAIST) Outline of lecture

i219 Software Design Methodology 1. Overview of software design methodology Kazuhiro Ogata (JAIST) Outline of lecture i219 Software Design Methodology 1. Overview of software design methodology Kazuhiro Ogata (JAIST) Outline of lecture 2 Activities involved in software development Unified Modeling Language (UML) for specifying

More information

Design Patterns for Description-Driven Systems

Design Patterns for Description-Driven Systems Design Patterns for Description-Driven Systems N. Baker 3, A. Bazan 1, G. Chevenier 2, Z. Kovacs 3, T Le Flour 1, J-M Le Goff 4, R. McClatchey 3 & S Murray 1 1 LAPP, IN2P3, Annecy-le-Vieux, France 2 HEP

More information

Software Architecture

Software Architecture Software Architecture Prof. R K Joshi Department of Computer Science and Engineering IIT Bombay What is Architecture? Software Architecture? Is this an Architecture? Is this an Architecture? Is this an

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

Arguments for Open Structure Execution Services

Arguments for Open Structure Execution Services Arguments for Open Structure Execution Services Jessica Rubart 1, Weigang Wang 1, Jörg M. Haake 2 1 Fraunhofer Institute for Integrated Publication and Information Systems (IPSI) Dolivostrasse 15 64293

More information

Review of Basic Software Design Concepts. Fethi Rabhi SENG 2021

Review of Basic Software Design Concepts. Fethi Rabhi SENG 2021 Review of Basic Software Design Concepts Fethi Rabhi SENG 2021 1 Topics The development process Planning Designing Implementing 2 1. The development process How to organise activities related to the creation,

More information

Approaches of using UML for Embedded System Design

Approaches of using UML for Embedded System Design Approaches of using UML for Embedded System Design Sudeep D. Thepade Lecturer, Dept. of Information Technology, Thadomal Shahani Engg. College, Bandra, Mumbai sudeepthepade@gmail.com Abstract New approaches

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 7 Integrated Object-Oriented Methodologies: OPEN and FOOM 1 Object-oriented Process, Environment and Notation (OPEN) First introduced in

More information

Domain Engineering And Variability In The Reuse-Driven Software Engineering Business.

Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. OBM 7 -draft 09/02/00 1 Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. Martin L. Griss, Laboratory Scientist, Hewlett-Packard Laboratories, Palo Alto, CA. Effective

More information