Programming Methodologies and Software Architecture

Size: px
Start display at page:

Download "Programming Methodologies and Software Architecture"

Transcription

1 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November ming Methodologies and Software Architecture A Rama Mohan Reddy Dr. M M Naidu Dr. P Govindarajulu Sri Venkateswara University College of Engineering Tirupati , Andhra Pradesh., India. Abstract Software quality is the major issues in software engineering discipline. The complexity of a program forces for better software design methodologies for enhancing the quality of software system. Researchers and practitioners proposed many program design methodologies. In the recent years, the software architecture is evolved as a way of software development that mainly focuses on computational units and overall structure of system rather than lines-code, called components. One of the characteristics of Software architecture is that it provides a higher level of abstraction. At higher level of abstraction, evaluation of quality attributes like reusability, substitutability and reliability of the software systems become easy. Software architecture supports many modeling techniques. Designers use these models to understand the underlying design issues, to evaluate functional and non-functional requirements and to communicate design decision to its stakeholders. For the better understanding of various aspects of Software Architecture such as evolution, description language, styles, evaluation and applicability, are discussed. This survey starts from various software development methodologies and goes up to software architecture. Key words: Methodology, Software Architecture, Reusability, design, Implementation. Introduction Software Systems are being evolved and crossed successfully so many hurdles. Complexity of the system increases with size. Quality is plays important role in software development as in section 2. In this, evolution process we noticed from its evolution the importance of Software development design methodologies. While the demand for software systems from different applications, the size and complexity of systems have been increased and opened a door for new methodologies to deal with the size and complexity. Quality, reusability, substitutability, and modifiability are became very important factor in software engineering. In section 3, we considered our ideas of deriving the program from the problem domain. Though concepts are not new but we put our ideas in a different way and shown diagrammatically for better understanding the conversion process of requirements. In section 4, the nature of the software has been considered its properties were discussed. Section 5 covered all the conventional and unconventional design methods and in section, 6 and 7 the component-based software engineering and design patterns are discussed. From section 8, onwards architectural evolution and subsequent development in architecture-based concepts are presented. In conclusion, we compared all the design methods based on the degree of abstraction they support. 2. Evolution Process Engineering disciplines such as Civil, Electrical and Mechanical Engineering s have reliable methods for analysis, design, fabrication, and Testing and are currently being in use. Many changes have been taken place in the above disciplines up to Most of the effort of people had been expended on hardware and the engineers struggled for improving reliability, quality, efficiency, and usability, as those were major hurdles. Hardware had been improved its stability and people started to develop large and complex systems and they were proved to highly fault tolerant and reliable. Hardware was the leader and a little amount of software was used and embedded in it. However, software engineering was a new discipline at the beginning of the computers era and its design methodologies were still in its infancy and biding state. These applications were small in size and had a less complexity. The developers had an idea that hardware had more functionality and greater role in controlling and coordinating activities than Software. They considered programming activity as an art and it is not an engineering activity. 3. The Development Concepts In 1980 s programmers were faced lots of problems to develop large and complex programs because the reliability and quality were major issues. This was due to the lack of reliable and established methodologies for developing programs. There was a great demand from the

2 30 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November 2006 society for large, complex, quality and reliable software systems. Only a few methods were available for developing applications, finding its quality, and testing of programs. Research shows that these systems lacked an architecture and plan. There were many specifications, and structures, but Integrity was lost. Despite all the specifications and structures, systems were essentially using Code and Fix. After some time, the fundamental design problems were addressed [2]. The primary use of a computer in an organization is not exactly to substitute a person but to assist him in many aspects. As shown in Figure (1), an employee, who is working in an organization, has the responsibility of performing a set of activities. As shown Figure (2), a question naturally arises that what activities are to be assigned to the computer. Here, there is a need to consider two different domains for better understanding the problem. As in Figure (3), first one is problem domain, and second, computer domain. Emp-1 INPUT Emp-2 Emp-5 Fig. 1 A typical organization without computers. Com-2 Emp-2 Emp-4 Emp-3 Emp-6 Com-3 Emp-3 OUTPUT Domain main () // Fig. 3 A from domain to Computer domain The domain has well defined infrastructure, like a language for communication, procedures to conduct business, and expertise to cater the needs of the business organization. The case with computer domain is it has also a language and methods to execute a predefined set of activities. But these two domains are entirely different from each other. A computer cannot understand directly the real world activities of various organizations. However, to solve this problem one possible solution is, to make the computers to read and understand real world activities directly and processes them or a developer learns some techniques that enable him to directly communicating his intensions to a computer system in machine understandable form. In this context, we are precipitating the issue as problem to program conversion. Then, how to extract the computer based solution from problem space. A good mapping method is required to bridge the gap between and as shown in figure (4) and (5). INPUT Com-1 Emp-1 Com-5 Emp-5 Com-4 Emp-4 Com-6 Emp-6 OUTPUT Proble m HLL Data, Function, & Behavior main () // Fig. 2 The same organization with computers. Fig. 4. A = Data, Function, & Behavior of Application

3 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November HLL Algorithm and Data Structures main () // different situations to meet various needs of the user using different programs, e.g., Engineering, Scientific, Business, Communication, Multimedia and Data Base Applications. The aspect of software in a computer system was becoming many times more important and demanded careful attention. This intern demanded good and effective methodologies to develop programs. Developing more robust, complex, quality, error free and reliable programs are posing many challenges on software development methodologies and on developers. Fig. 5. = Algorithm + Data Structures Primarily, the conversion methodology has two important activities to be performed; one is to understand the business and second is, take the abstraction of it. An higher-level of abstraction makes procedures easy to understand and implement. How an activity and its associated data can take a smooth transition to become itself an algorithm and data structures. In the real world, people and some controlling machinery are performing activities. In a typical organization, the software engineer actually assigns a subset of activities of an employee to a computer. Then the computer performs the defined tasks and assists the people. 4. Nature of the Software and demand The basic computer executes the instructions sequentially from the top to the bottom of the list. Software is intangible artifact does not have shape and feel, so, visualization of design is hard. Therefore, it is very difficult to assess the software product for its quality attributes and the amount work involved in it. This is one of the reasons for underestimating the cost, time and effort of program frequently. The software development process is mainly labor-intensive work, requires skilled people. Normally it is easy to develop a piece of software but it is very difficult to understand and modify properly without understanding its complete functional as well as technical designs. At the end of the 1980 s due to computer revolution and the effect of computer on the society, more and more users have had shown interest for using the computers in their areas, i.e., in business organizations, scientific and engineering, had created a lot of demand for both the software and hardware. Number people had involved for developing large, complex, and qualitative applications and caused to increase development cost. The actual cost of software had become many more times than hardware. The same hardware could be used differently in Researchers and Industry people proposed a number of methodologies for developing large and complex systems with high quality, and low-cost. Changes in Business process, errors in the software, portability, advancements in technology are some of the reasons for modifications in software. Modifications are mandatory in the long-lived and green software. modifications with out much understanding of the business process and its development methodology other wise they create chaos in the application. The change must be managed properly. 5. Design Methodologies 5. 1 Functional ming The functional programming, in which a program is viewed as a set of mathematical functions and equations, describing a relation between input and output. Prolog [Widstrm, 1987; Leler, 1987] supports this perspective. This programming method has different levels of abstraction as shown in figure (6). Fig. 6. Set of Equations describing a relation between input and output is Viewed as Mathematical functions Functional ming and its mapping

4 32 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November Procedural ming 5. 4 The Jackson System Development (JSD) In this methodology, A program execution is regarded as sequence of procedure calls and manipulation of variables, shown in figure (7). Application is Set of Variables and Set of Procedures viewed as sequence of procedure calls and manipulation of variables Fig. 7 Procedural ming transformations 5. 3 Structured Analysis & Design (SA / SD) In the 1970s, much attention was paid to the notion of structured programming. The analysis consists of interpreting the system concept or real-world environment into data and control. Data flow diagrams are used to represent its design as shown in figure (8). This approach of designing software has limitations and not fully catering the needs of the designers. Because of the increased size and complexity of the program. One more reason is that the designing and developing programs were becoming a very large-scale activity in the software development. In this method, the software development focuses on to construct a physical model of the real world. According to requirements, the functions can be added or changed but the physical model remains the same. As in figure (9) a program execution is regarded as a physical model, simulating the behavior of either a real or an imaginary part of the world. Fig. 9 The concept Jackson System Development 5. 5 Formal Methods Software development focuses on Construction of a physical model of the real world Simulating the behavior of either a real world or Imaginary part of the world Formal Methods (FM) consists of a set of techniques and tools based on mathematical modeling and formal logic. Those are used to specify, verify requirements and design of a computing systems. Some developers find that it can reduce overall development life cycle cost by eliminating many costly defects prior to coding. The concept is shown in figure (10). Mappin Interpreting realworld into data, function and control Emphasis more on functionalit y than data Techniques based on mathematical modeling and formal logic Mathematic al modeling techniques to design programs Fig. 8 Structured Analysis and Structured design Fig. 10 The principle behind the Formal Methods

5 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November Object-Oriented Analysis and Design Software development requires an introduction of a way of thinking that is how to solve the problem using the underlying conceptual framework. The primary advantages of OOP are real world apprehension, stability, reusability of designs and implementations. The OOP is close to the natural perception of real world [Krogdahl and Olsen, 1986]. If the programs are implemented in a natural way that they are much closer to the real world aspects, then programs are easy to write, understand and modify. This methodology has higher level of abstraction. Software activities and its types of artifacts are software architecture elements and reusable design aspects. The analysis first finds objects in the problem space, describes them with attributes, adds relationships, refines them into super, sub-types, and then defines associative objects The Object-Oriented programming provides a natural framework for modeling the application domain. Object-Orientation is a new paradigm that is viewed by many as the best solution to most large and complex problems. Advantages of modeling are the real world into objects is thought to follow a more natural human thinking process shown in figure (11). 6. Component-based Software development. The idea of component-based software engineering has been driven to the point of advocating construction of systems by simply assembling existing commodity components. Others develop those components for general use [8, 9, and 10]. For the same reasons there is also a growing interest in middleware solutions, either Object-Oriented ones [11, 12, 13, 14, 15, 16] or message-oriented ones [17]. The conversion process has been shown in figure (12). Assembling existing commodity components- Reuse - COTS Components and its interfaces and code for integration Fig. 12 Component-Based System Development Identification of Objects and allocation of functions and data Object creation, manipulation. Objects carry data and responsibilities Fig. 11 Object Oriented ming 5. 7 Aspect-Oriented ming (AOP) 7. Design patterns Object-Oriented approach is one of the best software design methodologies, are suitable for designing small scale and very large-scale programs. It has the features of extending data types and reuse of code and data structures. Object-Oriented approach has greater support for reuse and reusability. Designing frameworks promote reuse. Designing frameworks addresses a specific problem domain at code level. Further, as shown in figure (13), one-step ahead designing reusable design aspects is challenging one. Some of the design problems in very large-scale programming are solved by using the design patterns as building blocks. Design patterns allow developers for reusing successful designs and architectural designs in their new design solutions [18]. AOP is merely another patch to cover one of OOP's numerous shortcomings. First, isolate everything into a tiny package, relate and share things and make dynamic tags at runtime [7].

6 34 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November 2006 Designing reusable design aspects of s Reusable designs to Algorithms and data structures Fig. 13 Design patterns in Software Development 8. Evolution of Software Architecture Software architecture is a composition of software structural elements, i.e., Components, connectors and Constraints and the rationale. It includes the organization of components, component interactions, the granularity of interactions and the basis for software architecture to form a system. An architectural style is characterized by type of fundamental patterns of control and data flows, functions allocated to various components, types of connectors [19], and types of constraints. The conceptual separation between what and the how applies to the software architecture. Software architecture is concerned with the what. The notion of architecture is a common description of a class of systems [6]. In 1968, Edsger Dijkstra stated, How software is partitioned and structured as opposed to simply programming to produce a correct result [Dijkstra, 1968]. Dijkstra introduced the idea of a layered structure. David Parnas called it as information hiding [20]. The principle of using an element via its interface only and some observations of the various structures to be found in software systems [Parnas, 20, 74, 76, 21]. Parnas [1976] recognized that the structure of a system influences the qualities of that system. What exactly constitutes the interface to software elements are names of the programs and parameters, they take. Architectures cannot be understood except in light of the business issues that spanned there and see the ways to analyze architectures without waiting for the system to be built. The software architecture provides a higher level of abstraction for dealing with the complexity of the systems very easily. In 1972, Parnas [36] described the use of modularization and Information hiding as a means of high-level system decomposition to improve flexibility and comprehensibility. In 1974, Stevens et al, introduced the notions of module coupling and cohesion to evaluate alternatives for program decomposition. 9. Software Architecture Most early research on software architecture was concentrated on design methodologies. Object-Oriented Design [3] advocates a way to structure problems that leads naturally to an object-based architecture. One of the first design methodologies to emphasize design at the architectural level is the Jackson System Development [4]. There has been some initial work at investigating methodologies for the analysis and development of architectures, Kazman et al., have described design methods for eliciting the architectural trade-off analysis via ATAM[1999]. A shown in figure (14), Perry and Wolf [22] define software architecture as set of architectural elements and rationale. The rationale provides the underlying basis for the software architecture for choice of architectural style, the choice of elements and the form [6]. Rationale is an important aspect of software architecture research and of architectural description in particular. Perry, Wolf [22], Garlan, and Mary Shaw in 1993, described software architecture as system structure. Software architecture is collection of components, and connectors. Mary Shaw et al [23] defined software architecture as s system in terms of components and their interactions

7 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November Identification and Design of Components, Connectors and Configurations Run-time functional Units Fig. 14 Architecture-Based Software Development Business Analysis Design Construction Testing Conventional SDLC Algorithms And Data Structures Then Components, Connectors. Lines-Of-Code to Computational Units. Run-Time Architecture and Components, Connectors Software Architecture Building Blocks Components Connectors and configuration Architecture Requirements, Analysis, Design, evaluation and assessing Quality Attribute Fig. 15. Software Development Life Cycle and Architectural Systems

8 36 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November 2006 Business Architectures Analysis of Architectural Requirements Design of Architectures From SDLC Proposed Concept of SADLC Implementation of Architectures Testing of Architectures Fig. 16 Software Architecture Development Life Cycle (S A D L C) In addition to specifying the structure and topology of the system, the architecture shows the intended correspondence between the system requirements and element of the constructed system [22 and 6]. Shaw and Garlan [24] further elaborated this definition. Additional rationale for distinguishing configurations within architectural description languages is presented in Medvidovic and Taylor [25]. Perry and Wolf [22] define processing elements as transformers of data, while Shaw et al. [1995] describe components as the locus of computation and state. This is further clarified in Shaw and Clements [1997]. A component is a unit of software that performs some function at run-time. In figures (15) and (16), we have not considered the formal representation of process models like Waterfall model or linear sequential model approaches, but a lifecycle view of implementing different phases of software development considered generally. We are trying to show and understand software architecture and it is Life-Cycle in the Software Development Process as Software Architecture Development Life Cycle (SADLC). 10. Architectural Description Languages (ADL) An ADL is, according to Medvidovic and Taylor [25], a language that provides features for the explicit specification and modeling of a software system s conceptual architecture, including at a minimum; components, component interfaces, connectors, and architectural configurations. Darwin s interesting qualities are that it allows the specification of distributed architectures and dynamically composed architectures [26]. Like design methodologies, ADLs often introduce specific architectural assumptions that may affect their ability to describe some architectural styles, and may conflict with the assumptions in existing middleware [27]. 11. Software Architectural Styles An Architectural Styles increase the abstraction. A software architecture description defines the structure (high-level design) of a software system in terms of components and relationships. Styles are mechanisms for categorizing architectures and for defining their common characteristics [27]. 12. Conclusion We have discussed briefly the evolution of methodologies. First extension of this work is detailed survey on software architectures. In functional programming the activities and data are considered from problem domain. In Object-Orientation the data object are considered as main computational units. Similarly to Object-Orientation in case of software architecture we are trying to understand and study how to identify and extract the architectural elements from real world problem domain so that the real world components reflect in Analysis, Design and Code. In this direction we are proposing a Software Architecture Development Life cycle (SADLC) in order to study and understand the Architectural issues in problem domain and implementation of architectures. In each methodology

9 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November every author directly or indirectly tried to enhance the abstraction for making programming job easy. Parts of the material have been considered from research article, and from the World Wide Web. I express sincerely my thanks to all of the authors of the article for their guidance in understanding properly the software architecture. Table 1. Summary of Methodologies METHODOLOGY/ PROGRAMMING ABSTRACTION LEVELS DEGREE OF ABSTRACTION Functional ming The level of abstraction is low.. 3 Procedural ming The level of abstraction has been increased to procedures. 4 Structured Analysis and Design Interpreting the real world into data and control flow. 6 Jackson System Development Simulated - abstraction 5 Formal methods mathematical abstractions 3 Object-Orientation The programs are closer to the real world 7 Component-based Software Development Assembling from existing components. 7 Design patters Designing reusable design aspects. 4 Software Architectures 8 ADLs Description of Architectures in UML 6 Styles Interfaces and connections form a style. 6 Views Increase the abstraction 7 Quality attributes Abstraction specification aspects - *** Assuming that an abstraction rating is given on a scale from 1 to 10 and 1 indicates the lowest. This is not formal but to understand we used the above convention. This measurement is not based on any scientific method. Reference: [1] David Garlan and Mary Shaw. An Introduction to Software Architecture, School of Computer science, Carnegie Mellon University, Pittsburgh, PA , January, [2] Composition of Software Architectures. Ph.D. Dissertation, University of Rennes I, France, Feb [3] G. Booch. Object-Oriented development. IEEE Transactions on Software Engineering, 12(2), Feb. 1986, pp [4] J. R. Cameron. An overview of JSD. IEEE Transactions on Software Engineering, 12(2), Feb. 1986, [5] M. Shaw. Comparing architectural design styles. IEEE Software, 12(6), Nov. 1995, pp [6] Roy T. Fielding. Software Architectural Styles for Network-Based Applications. University of California, Irvine. Phase II Survey, [7] Object-Oriented beta Hand book. Www reference. [8] Alan W. Brown and Kurt C. Wallnau. The current state of CBSE, IEEE Software, 15(5):37-46, September / October [9] Paul C. Clements. From Subroutines to Subsystems: Component-Based software Development. The American programmers, 8(11), November Also available from This journal is now called The Journal of Information Technology Management, and can be found at [10] Oscar Nierstrasz, Simon Gibbs, and Dennis Tsichritzis. Component-Oriented Software Development. Comm. ACM, 35(9): , September [11] David Krieger and Richard M. Adler. The Emergence of Distributed component Platforms. Computer, 31(3):43-53, March [12] Microsoft Corporation. COM: Technical Overview. [Online] Available at http: // March 14], March [13] Microsoft Corporation. DCOM: Technical Overview. [Online] Available at

10 38 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November March 14], March [14] Object Management Group. The Common Object Request Broker: Architecture and Specification Revision [Online] Available at March 14], October Document formal / [15] Object Management Group. CORBA Services. [Online] Available at corba_services_available_electro.htm, [2001, March 14], October [16] Sun Microsystems. Enterprise JavaBeans Technology. [Online] Available at java.sum.com /products/ejb [2001, March 14], March [17] IBM Corporation. MQSeris Version 5. [Online] Available at 4.ibm.com/software/ts/mqseries/v5/ [2000, March 4], March [18] E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object- Oriented Software. PEARSON Education, Eleventh Indian Reprint, [19] Nenad Medvidovic, and Nikunj R. Mehta, Understanding Software Connector Compatibilities Using A Connector Taxonomy, SoDA 02 December 21-22, 2002, Bangalore, India. [20] D. L. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15(12), Dec. 1972, pp [21] D. L. Parnas. Designing software for ease of extension and contraction. IEEE Transactions on Software Engineering, SE-5(3), Mar [22] D. E. Perry and A. L Wolf. Foundations for the study of software architecture. ACM SIGSOFT Software Engineering Notes, 17(4), Oct. 1992, pp [23] M. Shaw, R. DeLine, D. V. Klein, T. L. Ross, D. M. Young, and G. Zelesnick. Abstractions for software architecture and tools to support them. IEEE Transactions on Software Engineering, 21(4), Apr. 1995, pp [24] M. Shaw and D. Garlan. Software Architecture: Perspectives on an emerging discipline. Prentice- Hall, [25] N. Medvidovic and R. N. Taylor. A framework for classifying and comparing architecture description Languages. In Proceedings of the 6 th European Software Engineering Conference held jointly with the 5 th ACM SIGSOFT Symposium on the Foundations of Software Engineering, Zurich, Switzerland, Sep. 1997, pp [26] J. Magee and J. Kramer, Dynamic Structure in software architectures. In Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering (SIGSOFT 96), San Francisco, Oct. 1996, pp [27] E. Di Nitto and D. Rosenblum. Exploiting ADLs to specify architectural styles induced by middleware infrastructures. In Proceedings of the 1999 International Conference on Software Engineering, Los Angeles, May 16-22, 1999, pp [28] M. Shaw. Toward higher-level abstractions for software systems. Data & Knowledge Engineering, 5, 1990, pp [29] D. Garlan and M. Shaw. An intro-duction to software architecture. Ambriola & Tortola (eds.), Advances in Software Engineering & Knowledge Engineering, vol. II, World Scientific Pub Co., Singapore, 1993, pp [30] D. Garlan R. Allen, and J. Ockerbloom,. Exploiting an architectural design environments. In Proceedings of the Second ACM SIGSOFT Symposium on the Foundations of Software Enginee-ring (SIGSOFT 94), New Orleans, Dec. 1994, pp [31] M. Shaw and P. Clements. A field guide to box logy; Preliminary classification of architectural styles for software systems. In Proceedings of the Twenty-First Annual International Computer Software and Applications Conference (COMPSAC 97),Washington, D. C, Aug; 1997, pp [32] N. L. Kerth and W. Cunningham. Using patterns to improve out architectural vision. IEEE Software, 14(1), Jan. 1997, pp [33] L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison Wesley, Trading, Mass., [34] P. B. Kruchten, The 4+1 View Model of architecture. IEEE Software, 12(6), Nov. 1995, pp [35] C. Alexander, S. Ishikawa, M, Silver-stein, M. Jacobson, I. Fiksdahl-King, and S. Angel. A Pattern Language. Oxford University Press, New York, [36] D. L. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15(12), Dec, 1972, pp [37] D. Garlan, R. Allen, and J. Ockerbloom. Architectural Mismatch or Why it is Hard to Build Systems out of Existing Parts. In Proceedings of the 17 th International Conference on Software Engineering, pages , April Also available from ct/ able/paper-abstracts/arh-mismatch-icse17.html

11 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.11, November [38] About Authors Dr. P Govindarajulu, Professor of Computer Science, Sri Venkateswara University, TIRUPATI., INDIA. He completed his PhD from IIT Mumbai., India A Rama Mohan Reddy, Associate Professor of Computer Science and Engineering, Sri Venkateswara University College of Engineering, TIRUPATI. Completed His M.Tech computer Science from NIT Warangal and His doing his PhD in Software Architecture that is the sub field of Software Engineering, in Sri Venkateswara University, Tirupati., India Dr. M M Naidu, Professor of Computer Science and Engineering, Sri Venkateswara University college of Engineering, TIRUPATI. He completed PhD from IIT, Delhi, India.

FL-ARCH DESIGN: Formal Description Languages for the Architectural Design of Software Systems

FL-ARCH DESIGN: Formal Description Languages for the Architectural Design of Software Systems THALES Project No. 1194 FL-ARCH DESIGN: Formal Description Languages for the Architectural Design of Software Systems Research Team Manolis Skordalakis, Professor * Nikolaos S. Papaspyrou, Lecturer Paris

More information

Toward a Conceptual Comparison Framework between CBSE and SOSE

Toward a Conceptual Comparison Framework between CBSE and SOSE Toward a Conceptual Comparison Framework between CBSE and SOSE Anthony Hock-koon and Mourad Oussalah University of Nantes, LINA 2 rue de la Houssiniere, 44322 NANTES, France {anthony.hock-koon,mourad.oussalah}@univ-nantes.fr

More information

Software Architecture. New wine in old bottles? (i.e., software architecture global design?, architect designer)

Software Architecture. New wine in old bottles? (i.e., software architecture global design?, architect designer) Software Architecture New wine in old bottles? (i.e., software architecture global design?, architect designer) Overview What is it, why bother? Architecture Design Viewpoints and view models Architectural

More information

Course Outline Department of Computing Science Faculty of Science

Course Outline Department of Computing Science Faculty of Science Course Outline Department of Computing Science Faculty of Science COMP 2920 3 Software Architecture & Design (3,1,0) Fall, 2015 Instructor: Phone/Voice Mail: Office: E-Mail: Office Hours: Calendar /Course

More information

CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN

CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN SESSION II: OVERVIEW OF SOFTWARE ENGINEERING DESIGN Software Engineering Design: Theory and Practice by Carlos E. Otero Slides copyright 2012 by Carlos

More information

UNIT-III LIFE-CYCLE PHASES

UNIT-III LIFE-CYCLE PHASES INTRODUCTION: UNIT-III LIFE-CYCLE PHASES - If there is a well defined separation between research and development activities and production activities then the software is said to be in successful development

More information

Refinement and Evolution Issues in Bridging Requirements and Architectures

Refinement and Evolution Issues in Bridging Requirements and Architectures Refinement and Evolution Issues between Requirements and Product Line s 1 Refinement and Evolution Issues in Bridging Requirements and s Alexander Egyed, Paul Gruenbacher, and Nenad Medvidovic University

More information

Grundlagen des Software Engineering Fundamentals of Software Engineering

Grundlagen des Software Engineering Fundamentals of Software Engineering Software Engineering Research Group: Processes and Measurement Fachbereich Informatik TU Kaiserslautern Grundlagen des Software Engineering Fundamentals of Software Engineering Winter Term 2011/12 Prof.

More information

GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS

GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS 1 A. SOUJANYA, 2 SIDDHARTHA GHOSH 1 M.Tech Student, Department of CSE, Keshav Memorial Institute of Technology(KMIT), Narayanaguda, Himayathnagar,

More information

Designing Architectures

Designing Architectures Designing Architectures Lecture 4 Copyright Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. How Do You Design? Where do architectures come from? Creativity 1) Fun! 2) Fraught

More information

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007 Course Introduction and Overview of Software Engineering Richard N. Taylor Informatics 211 Fall 2007 Software Engineering A discipline that deals with the building of software systems which are so large

More information

The Decision View of Software Architecture: Building by Browsing

The Decision View of Software Architecture: Building by Browsing The Decision View of Software Architecture: Building by Browsing Juan C. Dueñas 1, Rafael Capilla 2 1 Department of Engineering of Telematic Systems, ETSI Telecomunicación, Universidad Politécnica de Madrid,

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 2: USDP Overview Department of Computer Engineering Sharif University of Technology 1 Review The Unified Modeling Language (UML) is a standard language for specifying, visualizing,

More information

Explicit Domain Knowledge in Software Engineering

Explicit Domain Knowledge in Software Engineering Explicit Domain Knowledge in Software Engineering Maja D Hondt System and Software Engineering Lab Vrije Universiteit Brussel, Belgium mjdhondt@vub.ac.be January 6, 2002 1 Research Areas This research

More information

Software-Intensive Systems Producibility

Software-Intensive Systems Producibility Pittsburgh, PA 15213-3890 Software-Intensive Systems Producibility Grady Campbell Sponsored by the U.S. Department of Defense 2006 by Carnegie Mellon University SSTC 2006. - page 1 Producibility

More information

The Use of Patterns in Systems Engineering Satya Moorthy Robert Cloutier, Ph.D. Lockheed Martin MS2

The Use of Patterns in Systems Engineering Satya Moorthy Robert Cloutier, Ph.D. Lockheed Martin MS2 The Use of Patterns in Systems Engineering Satya Moorthy Robert Cloutier, Ph.D. Lockheed Martin MS2 10/24/06 1 Topics Abstract Definitions Value of Patterns Documented Pattern Language Patterns New Pattern

More information

Future Trends of Software Technology and Applications: Software Architecture

Future Trends of Software Technology and Applications: Software Architecture Pittsburgh, PA 15213-3890 Future Trends of Software Technology and Applications: Software Architecture Paul Clements Software Engineering Institute Carnegie Mellon University Sponsored by the U.S. Department

More information

Evolving Enterprise Architecture

Evolving Enterprise Architecture Evolving Enterprise Architecture Richard Martin Tinwisle Corporation Sandeep Purao Penn State University Pre-ICEIMT 10 Workshop IEDC Bled, Slovenia Edward Robinson Indiana University December 14, 2009

More information

Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper

Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper Liming Zhu, Muhammad Ali Babar, Ross Jeffery National ICT Australia Ltd. and University of New South Wales, Australia

More information

Towards Integrated System and Software Modeling for Embedded Systems

Towards Integrated System and Software Modeling for Embedded Systems Towards Integrated System and Software Modeling for Embedded Systems Hassan Gomaa Department of Computer Science George Mason University, Fairfax, VA hgomaa@gmu.edu Abstract. This paper addresses the integration

More information

Software Agent Reusability Mechanism at Application Level

Software Agent Reusability Mechanism at Application Level Global Journal of Computer Science and Technology Software & Data Engineering Volume 13 Issue 3 Version 1.0 Year 2013 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals

More information

TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL

TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL Fahad Salmeen Al-Obthani 1 and Ali Abdulbaqi Ameen 2 1, 2 Lincoln University College, Wisma Lincoln, No. 12-18, Jalan SS 6/12, Petaling Jaya, Darul Ehsan,

More information

Using Variability Modeling Principles to Capture Architectural Knowledge

Using Variability Modeling Principles to Capture Architectural Knowledge Using Variability Modeling Principles to Capture Architectural Knowledge Marco Sinnema University of Groningen PO Box 800 9700 AV Groningen The Netherlands +31503637125 m.sinnema@rug.nl Jan Salvador van

More information

Software Maintenance Cycles with the RUP

Software Maintenance Cycles with the RUP Software Maintenance Cycles with the RUP by Philippe Kruchten Rational Fellow Rational Software Canada The Rational Unified Process (RUP ) has no concept of a "maintenance phase." Some people claim that

More information

AN INTERROGATIVE REVIEW OF REQUIREMENT ENGINEERING FRAMEWORKS

AN INTERROGATIVE REVIEW OF REQUIREMENT ENGINEERING FRAMEWORKS AN INTERROGATIVE REVIEW OF REQUIREMENT ENGINEERING FRAMEWORKS MUHAMMAD HUSNAIN, MUHAMMAD WASEEM, S. A. K. GHAYYUR Department of Computer Science, International Islamic University Islamabad, Pakistan E-mail:

More information

Object-oriented Analysis and Design

Object-oriented Analysis and Design Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Understanding the Client s environment and needs. Analysis Identifying the concepts (classes) in the problem domain

More information

Software Architecture: a Roadmap

Software Architecture: a Roadmap Software Architecture: a Roadmap David Garlan School of Computer Science Carnegie Mellon University 5000 Forbes Avenue Pittsburgh, PA 15213 (412) 268-5056 garlan@cs.cmu.edu ABSTRACT Over the past decade

More information

Unit 5: Unified Software Development Process. 3C05: Unified Software Development Process USDP. USDP for your project. Iteration Workflows.

Unit 5: Unified Software Development Process. 3C05: Unified Software Development Process USDP. USDP for your project. Iteration Workflows. Unit 5: Unified Software Development Process 3C05: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 1 2

More information

A FORMAL METHOD FOR MAPPING SOFTWARE ENGINEERING PRACTICES TO ESSENCE

A FORMAL METHOD FOR MAPPING SOFTWARE ENGINEERING PRACTICES TO ESSENCE A FORMAL METHOD FOR MAPPING SOFTWARE ENGINEERING PRACTICES TO ESSENCE Murat Pasa Uysal Department of Management Information Systems, Başkent University, Ankara, Turkey ABSTRACT Essence Framework (EF) aims

More information

Ivica Crnkovic Mälardalen University Department of Computer Science and Engineering

Ivica Crnkovic Mälardalen University Department of Computer Science and Engineering Ivica Crnkovic Mälardalen University Department of Computer Science and Engineering ivica.crnkovic@mdh.se http://www.idt.mdh.se/~icc Page 1, 10/21/2008 Contents What is Software Engineering? i Software

More information

System of Systems Software Assurance

System of Systems Software Assurance System of Systems Software Assurance Introduction Under DoD sponsorship, the Software Engineering Institute has initiated a research project on system of systems (SoS) software assurance. The project s

More information

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING Edward A. Addy eaddy@wvu.edu NASA/WVU Software Research Laboratory ABSTRACT Verification and validation (V&V) is performed during

More information

Model-Based Systems Engineering Methodologies. J. Bermejo Autonomous Systems Laboratory (ASLab)

Model-Based Systems Engineering Methodologies. J. Bermejo Autonomous Systems Laboratory (ASLab) Model-Based Systems Engineering Methodologies J. Bermejo Autonomous Systems Laboratory (ASLab) Contents Introduction Methodologies IBM Rational Telelogic Harmony SE (Harmony SE) IBM Rational Unified Process

More information

Editorial for the Special Issue on Aspects and Model-Driven Engineering

Editorial for the Special Issue on Aspects and Model-Driven Engineering Editorial for the Special Issue on Aspects and Model-Driven Engineering Robert France 1 and Jean-Marc Jézéquel 2 1 Colorado State University, Fort Collins, Colorado, USA, france@cs.colostate.edu, 2 IRISA-Université

More information

Methodology for Agent-Oriented Software

Methodology for Agent-Oriented Software ب.ظ 03:55 1 of 7 2006/10/27 Next: About this document... Methodology for Agent-Oriented Software Design Principal Investigator dr. Frank S. de Boer (frankb@cs.uu.nl) Summary The main research goal of this

More information

The secret behind mechatronics

The secret behind mechatronics The secret behind mechatronics Why companies will want to be part of the revolution In the 18th century, steam and mechanization powered the first Industrial Revolution. At the turn of the 20th century,

More information

Separation of Concerns in Software Engineering Education

Separation of Concerns in Software Engineering Education Separation of Concerns in Software Engineering Education Naji Habra Institut d Informatique University of Namur Rue Grandgagnage, 21 B-5000 Namur +32 81 72 4995 nha@info.fundp.ac.be ABSTRACT Separation

More information

Reconsidering the Role of Systems Engineering in DoD Software Problems

Reconsidering the Role of Systems Engineering in DoD Software Problems Pittsburgh, PA 15213-3890 SIS Acquisition Reconsidering the Role of Systems Engineering in DoD Software Problems Grady Campbell (ghc@sei.cmu.edu) Sponsored by the U.S. Department of Defense 2004 by Carnegie

More information

Introduction to adoption of lean canvas in software test architecture design

Introduction to adoption of lean canvas in software test architecture design Introduction to adoption of lean canvas in software test architecture design Padmaraj Nidagundi 1, Margarita Lukjanska 2 1 Riga Technical University, Kaļķu iela 1, Riga, Latvia. 2 Politecnico di Milano,

More information

A Product Derivation Framework for Software Product Families

A Product Derivation Framework for Software Product Families A Product Derivation Framework for Software Product Families Sybren Deelstra, Marco Sinnema, Jan Bosch Department of Mathematics and Computer Science, University of Groningen, PO Box 800, 9700 AV Groningen,

More information

Systems Architecting and Software Architecting - On Separate or Convergent Paths?

Systems Architecting and Software Architecting - On Separate or Convergent Paths? Paper ID #5762 Systems Architecting and Architecting - On Separate or Convergent Paths? Dr. Howard Eisner, George Washington University Dr. Eisner, since 1989, has served as Distinguished Research Professor

More information

Towards an MDA-based development methodology 1

Towards an MDA-based development methodology 1 Towards an MDA-based development methodology 1 Anastasius Gavras 1, Mariano Belaunde 2, Luís Ferreira Pires 3, João Paulo A. Almeida 3 1 Eurescom GmbH, 2 France Télécom R&D, 3 University of Twente 1 gavras@eurescom.de,

More information

Pervasive Services Engineering for SOAs

Pervasive Services Engineering for SOAs Pervasive Services Engineering for SOAs Dhaminda Abeywickrama (supervised by Sita Ramakrishnan) Clayton School of Information Technology, Monash University, Australia dhaminda.abeywickrama@infotech.monash.edu.au

More information

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION 2017 HAWAII UNIVERSITY INTERNATIONAL CONFERENCES SCIENCE, TECHNOLOGY & ENGINEERING, ARTS, MATHEMATICS & EDUCATION JUNE 8-10, 2017 HAWAII PRINCE HOTEL WAIKIKI, HONOLULU, HAWAII ENGAGE MSU STUDENTS IN RESEARCH

More information

A New Approach to Software Development Fusion Process Model

A New Approach to Software Development Fusion Process Model J. Software Engineering & Applications, 2010, 3, 998-1004 doi:10.4236/jsea.2010.310117 Published Online October 2010 (http://www.scirp.org/journal/jsea) A New Approach to Software Development Fusion Process

More information

Thriving Systems Theory:

Thriving Systems Theory: Thriving Systems Theory: An Emergent Information Systems Design Theory Les Waguespack, Ph.D. Professor & Chairperson of Computer Information Systems William T. Schiano professor of Computer Information

More information

Architectural Mismatch: Why Reuse Is Still So Hard

Architectural Mismatch: Why Reuse Is Still So Hard www.computer.org/software Architectural Mismatch: Why Reuse Is Still So Hard David Garlan, Robert Allen, and John Ockerbloom Vol. 26, No. 4 July/August 2009 This material is presented to ensure timely

More information

About Software Engineering.

About Software Engineering. About Software Engineering pierre-alain.muller@uha.fr What is Software Engineering? Software Engineering Software development Engineering Let s s have a look at ICSE International Conference on Software

More information

CSE 435: Software Engineering

CSE 435: Software Engineering CSE 435: Software Engineering Dr. James Daly 3501 Engineering Building Office: 3501 EB, by appointment dalyjame at msu dot edu TAs: Vincent Ragusa and Mohammad Roohitavaf Helproom Tuesday: 2-4 pm, Wednesday

More information

Using Program Slicing to Identify Faults in Software:

Using Program Slicing to Identify Faults in Software: Using Program Slicing to Identify Faults in Software: Sue Black 1, Steve Counsell 2, Tracy Hall 3, Paul Wernick 3, 1 Centre for Systems and Software Engineering, London South Bank University, 103 Borough

More information

1. Historical Development of SSDMs

1. Historical Development of SSDMs Chapter 1 Historical Development of SSDMs 1. Historical Development of SSDMs 1.1. In Days of Yore The development of software system design methods has been something of a melting pot. The earliest programmable

More information

Architectural assumptions and their management in software development Yang, Chen

Architectural assumptions and their management in software development Yang, Chen University of Groningen Architectural assumptions and their management in software development Yang, Chen IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish

More information

Abstract. Introduction

Abstract. Introduction Abstract System Dynamics Models and the Object-Oriented Paradigm Warren W. Tignor PhD Kimmich Software Systems, Inc. 7235 Dockside Lane Columbia, Maryland 21045 USA (410) 381-6009/(410) 381-5865 (fax)

More information

The Evolution Tree: A Maintenance-Oriented Software Development Model

The Evolution Tree: A Maintenance-Oriented Software Development Model The Evolution Tree: A Maintenance-Oriented Software Development Model Amir Tomer The Technion Israel Institute of Technology, Haifa, Israel Stephen R. Schach Vanderbilt University, Nashville, Tennessee,

More information

A Theory about the Structure of GTSEs

A Theory about the Structure of GTSEs A Theory about the Structure of GTSEs Dewayne E Perry ENS 623 Perry@ece.utexas.edu 1 Separation of Concerns An important separation of concerns distinguish between Theories about software engineers (SEs)

More information

SAFETY CASE PATTERNS REUSING SUCCESSFUL ARGUMENTS. Tim Kelly, John McDermid

SAFETY CASE PATTERNS REUSING SUCCESSFUL ARGUMENTS. Tim Kelly, John McDermid SAFETY CASE PATTERNS REUSING SUCCESSFUL ARGUMENTS Tim Kelly, John McDermid Rolls-Royce Systems and Software Engineering University Technology Centre Department of Computer Science University of York Heslington

More information

First steps towards a mereo-operandi theory for a system feature-based architecting of cyber-physical systems

First steps towards a mereo-operandi theory for a system feature-based architecting of cyber-physical systems First steps towards a mereo-operandi theory for a system feature-based architecting of cyber-physical systems Shahab Pourtalebi, Imre Horváth, Eliab Z. Opiyo Faculty of Industrial Design Engineering Delft

More information

MANAGING HUMAN-CENTERED DESIGN ARTIFACTS IN DISTRIBUTED DEVELOPMENT ENVIRONMENT WITH KNOWLEDGE STORAGE

MANAGING HUMAN-CENTERED DESIGN ARTIFACTS IN DISTRIBUTED DEVELOPMENT ENVIRONMENT WITH KNOWLEDGE STORAGE MANAGING HUMAN-CENTERED DESIGN ARTIFACTS IN DISTRIBUTED DEVELOPMENT ENVIRONMENT WITH KNOWLEDGE STORAGE Marko Nieminen Email: Marko.Nieminen@hut.fi Helsinki University of Technology, Department of Computer

More information

Towards a Software Engineering Research Framework: Extending Design Science Research

Towards a Software Engineering Research Framework: Extending Design Science Research Towards a Software Engineering Research Framework: Extending Design Science Research Murat Pasa Uysal 1 1Department of Management Information Systems, Ufuk University, Ankara, Turkey ---------------------------------------------------------------------***---------------------------------------------------------------------

More information

IBM Rational Software

IBM Rational Software IBM Rational Software Development Conference 2008 Pushing open new DOORS: Support for next generation methodologies for capturing and analyzing requirements Phani Challa Rick Banerjee phchalla@in.ibm.com

More information

Towards a Design Theory for Trustworthy Information

Towards a Design Theory for Trustworthy Information Towards a Design Theory for Trustworthy Information Elegance Defense in Depth Defining Domains Systems Identity Management intuitiveness divisibility Simple Trusted Components Les Waguespack, Ph.D., Professor!

More information

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS Eva Cipi, PhD in Computer Engineering University of Vlora, Albania Abstract This paper is focused on presenting

More information

Color Image Compression using SPIHT Algorithm

Color Image Compression using SPIHT Algorithm Color Image Compression using SPIHT Algorithm Sadashivappa 1, Mahesh Jayakar 1.A 1. Professor, 1. a. Junior Research Fellow, Dept. of Telecommunication R.V College of Engineering, Bangalore-59, India K.V.S

More information

Requirements Analysis aka Requirements Engineering. Requirements Elicitation Process

Requirements Analysis aka Requirements Engineering. Requirements Elicitation Process C870, Advanced Software Engineering, Requirements Analysis aka Requirements Engineering Defining the WHAT Requirements Elicitation Process Client Us System SRS 1 C870, Advanced Software Engineering, Requirements

More information

UNIT VIII SYSTEM METHODOLOGY 2014

UNIT VIII SYSTEM METHODOLOGY 2014 SYSTEM METHODOLOGY: UNIT VIII SYSTEM METHODOLOGY 2014 The need for a Systems Methodology was perceived in the second half of the 20th Century, to show how and why systems engineering worked and was so

More information

Software as a Medical Device (SaMD)

Software as a Medical Device (SaMD) Software as a Medical Device () Working Group Status Application of Clinical Evaluation Working Group Chair: Bakul Patel Center for Devices and Radiological Health US Food and Drug Administration NWIE

More information

Introduction to Systems Engineering

Introduction to Systems Engineering p. 1/2 ENES 489P Hands-On Systems Engineering Projects Introduction to Systems Engineering Mark Austin E-mail: austin@isr.umd.edu Institute for Systems Research, University of Maryland, College Park Career

More information

This article was originally published in a journal published by Elsevier, and the attached copy is provided by Elsevier for the author s benefit and for the benefit of the author s institution, for non-commercial

More information

Rapid Prototyping of Computer Systems , , A, , Units Carnegie Mellon University. Course Syllabus Spring 2005

Rapid Prototyping of Computer Systems , , A, , Units Carnegie Mellon University. Course Syllabus Spring 2005 Rapid Prototyping of Computer Systems 05-540, 05-872, 15-540A, 18-540, 39-648 12 Units Carnegie Mellon University Course Syllabus Spring 2005 Lectures: Monday, Wednesday, 1:30-2:50, Hamburg Hall 2224 Wearable

More information

A Mashup of Techniques to Create Reference Architectures

A Mashup of Techniques to Create Reference Architectures A Mashup of Techniques to Create Reference Architectures Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Rick Kazman, John McGregor Copyright 2012 Carnegie Mellon University.

More information

Dix, Alan; Finlay, Janet; Abowd, Gregory; & Beale, Russell. Human- Graduate Software Engineering Education. Technical Report CMU-CS-93-

Dix, Alan; Finlay, Janet; Abowd, Gregory; & Beale, Russell. Human- Graduate Software Engineering Education. Technical Report CMU-CS-93- References [ACM92] ACM SIGCHI/ACM Special Interest Group on Computer-Human Interaction.. Curricula for Human-Computer Interaction. New York, N.Y.: Association for Computing Machinery, 1992. [CMU94] [Dix93]

More information

TOWARDS AN ARCHITECTURE FOR ENERGY MANAGEMENT INFORMATION SYSTEMS AND SUSTAINABLE AIRPORTS

TOWARDS AN ARCHITECTURE FOR ENERGY MANAGEMENT INFORMATION SYSTEMS AND SUSTAINABLE AIRPORTS International Symposium on Sustainable Aviation May 29- June 1, 2016 Istanbul, TURKEY TOWARDS AN ARCHITECTURE FOR ENERGY MANAGEMENT INFORMATION SYSTEMS AND SUSTAINABLE AIRPORTS Murat Pasa UYSAL 1 ; M.

More information

Globalizing Modeling Languages

Globalizing Modeling Languages Globalizing Modeling Languages Benoit Combemale, Julien Deantoni, Benoit Baudry, Robert B. France, Jean-Marc Jézéquel, Jeff Gray To cite this version: Benoit Combemale, Julien Deantoni, Benoit Baudry,

More information

A Spiral Development Model for an Advanced Traffic Management System (ATMS) Architecture Based on Prototype

A Spiral Development Model for an Advanced Traffic Management System (ATMS) Architecture Based on Prototype International Journal of Science, Technology and Society 2015; 3(6): 304-308 Published online December 15, 2015 (http://www.sciencepublishinggroup.com/j/ijsts) doi: 10.11648/j.ijsts.20150306.15 ISSN: 2330-7412

More information

ABSTRACT. Keywords Virtual Reality, Java, JavaBeans, C++, CORBA 1. INTRODUCTION

ABSTRACT. Keywords Virtual Reality, Java, JavaBeans, C++, CORBA 1. INTRODUCTION Tweek: Merging 2D and 3D Interaction in Immersive Environments Patrick L Hartling, Allen D Bierbaum, Carolina Cruz-Neira Virtual Reality Applications Center, 2274 Howe Hall Room 1620, Iowa State University

More information

Context Sensitive Interactive Systems Design: A Framework for Representation of contexts

Context Sensitive Interactive Systems Design: A Framework for Representation of contexts Context Sensitive Interactive Systems Design: A Framework for Representation of contexts Keiichi Sato Illinois Institute of Technology 350 N. LaSalle Street Chicago, Illinois 60610 USA sato@id.iit.edu

More information

A Social Creativity Support Tool Enhanced by Recommendation Algorithms: The Case of Software Architecture Design

A Social Creativity Support Tool Enhanced by Recommendation Algorithms: The Case of Software Architecture Design A Social Creativity Support Tool Enhanced by Recommendation Algorithms: The Case of Software Architecture Design George A. Sielis, Aimilia Tzanavari and George A. Papadopoulos Abstract Reusability of existing

More information

Socio-cognitive Engineering

Socio-cognitive Engineering Socio-cognitive Engineering Mike Sharples Educational Technology Research Group University of Birmingham m.sharples@bham.ac.uk ABSTRACT Socio-cognitive engineering is a framework for the human-centred

More information

Software Life Cycle Models

Software Life Cycle Models 1 Software Life Cycle Models The goal of Software Engineering is to provide models and processes that lead to the production of well-documented maintainable software in a manner that is predictable. 2

More information

An Industrial Application of an Integrated UML and SDL Modeling Technique

An Industrial Application of an Integrated UML and SDL Modeling Technique An Industrial Application of an Integrated UML and SDL Modeling Technique Robert B. France 1, Maha Boughdadi 2, Robert Busser 2 1 Computer Science Department, Colorado State University, Fort Collins, Colorodo,

More information

Evidence Engineering. Audris Mockus University of Tennessee and Avaya Labs Research [ ]

Evidence Engineering. Audris Mockus University of Tennessee and Avaya Labs Research [ ] Evidence Engineering Audris Mockus University of Tennessee and Avaya Labs Research audris@{utk.edu,avaya.com} [2015-02-20] How we got here: selected memories 70 s giant systems Thousands of people, single

More information

A Balanced Introduction to Computer Science, 3/E

A Balanced Introduction to Computer Science, 3/E A Balanced Introduction to Computer Science, 3/E David Reed, Creighton University 2011 Pearson Prentice Hall ISBN 978-0-13-216675-1 Chapter 10 Computer Science as a Discipline 1 Computer Science some people

More information

Towards a multi-view point safety contract Alejandra Ruiz 1, Tim Kelly 2, Huascar Espinoza 1

Towards a multi-view point safety contract Alejandra Ruiz 1, Tim Kelly 2, Huascar Espinoza 1 Author manuscript, published in "SAFECOMP 2013 - Workshop SASSUR (Next Generation of System Assurance Approaches for Safety-Critical Systems) of the 32nd International Conference on Computer Safety, Reliability

More information

ENGINEERING SERVICE-ORIENTED ROBOTIC SYSTEMS

ENGINEERING SERVICE-ORIENTED ROBOTIC SYSTEMS ENGINEERING SERVICE-ORIENTED ROBOTIC SYSTEMS Prof. Dr. Lucas Bueno R. de Oliveira Prof. Dr. José Carlos Maldonado SSC5964 2016/01 AGENDA Robotic Systems Service-Oriented Architecture Service-Oriented Robotic

More information

HELPING THE DESIGN OF MIXED SYSTEMS

HELPING THE DESIGN OF MIXED SYSTEMS HELPING THE DESIGN OF MIXED SYSTEMS Céline Coutrix Grenoble Informatics Laboratory (LIG) University of Grenoble 1, France Abstract Several interaction paradigms are considered in pervasive computing environments.

More information

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli IS 525 Chapter 2 Methodology Dr. Nesrine Zemirli Assistant Professor. IS Department CCIS / King Saud University E-mail: Web: http://fac.ksu.edu.sa/nzemirli/home Chapter Topics Fundamental concepts and

More information

Introductions. Characterizing Knowledge Management Tools

Introductions. Characterizing Knowledge Management Tools Characterizing Knowledge Management Tools Half-day Tutorial Developed by Kurt W. Conrad, Brian (Bo) Newman, and Dr. Art Murray Presented by Kurt W. Conrad conrad@sagebrushgroup.com Based on A ramework

More information

Towards an Architecture Maintainability Maturity Model (AM 3 )

Towards an Architecture Maintainability Maturity Model (AM 3 ) Towards an Architecture Maintainability Maturity Model (AM 3 ) Christoph Rathfelder, Henning Groenda FZI Forschungszentrum Informatik, Software Engineering, Haid-und-Neu-Straße 10-14, 76131 Karlsruhe {rathfelder,

More information

Playware Research Methodological Considerations

Playware Research Methodological Considerations Journal of Robotics, Networks and Artificial Life, Vol. 1, No. 1 (June 2014), 23-27 Playware Research Methodological Considerations Henrik Hautop Lund Centre for Playware, Technical University of Denmark,

More information

Identifying and Recording Software Architectural Assumptions in Agile Development

Identifying and Recording Software Architectural Assumptions in Agile Development Identifying and Recording Software Architectural Assumptions in Agile Development Chen Yang State Key Lab of Software Engineering School of Computer, Wuhan University Wuhan, China cyang@whu.edu.cn Peng

More information

Modeling Enterprise Systems

Modeling Enterprise Systems Modeling Enterprise Systems A summary of current efforts for the SERC November 14 th, 2013 Michael Pennock, Ph.D. School of Systems and Enterprises Stevens Institute of Technology Acknowledgment This material

More information

Models, Simulations, and Digital Engineering in Systems Engineering Restructure (Defense Acquisition University CLE011)

Models, Simulations, and Digital Engineering in Systems Engineering Restructure (Defense Acquisition University CLE011) Models, Simulations, and Digital Engineering in Systems Engineering Restructure (Defense Acquisition University CLE011) Ms. Philomena Phil Zimmerman Deputy Director, Engineering Tools & Environments Office

More information

ware-intensive Systems, Proceedings of the USC-CSE Focused Workshop on Software Architectures, June Luckham, D., Augustin L., Kenney J.

ware-intensive Systems, Proceedings of the USC-CSE Focused Workshop on Software Architectures, June Luckham, D., Augustin L., Kenney J. ware-intensive Systems, Proceedings of the USC-CSE Focused Workshop on Software Architectures, June 1994. Luckham, D., Augustin L., Kenney J., Vera J., Bryan D., and Mann W. (1994), Specification and Analysis

More information

On the Definition of Software System Architecture

On the Definition of Software System Architecture USC C S E University of Southern California Center for Software Engineering Technical Report USC/CSE-95-TR-500 April 1995 Appeared in Proceedings of the First International Workshop on Architectures for

More information

SOFTWARE ARCHITECTURE

SOFTWARE ARCHITECTURE SOFTWARE ARCHITECTURE Foundations, Theory, and Practice Richard N. Taylor University of California, Irvine Nenad Medvidovic University of Southern California Eric M. Dashofy The Aerospace Corporation WILEY

More information

Systems Modeling and Modularity Assessment for Embedded Computer Control Applications

Systems Modeling and Modularity Assessment for Embedded Computer Control Applications Systems Modeling and Modularity Assessment for Embedded Computer Control Applications DEJIU CHEN!"#$ # %# &# '$#%& (" 1 &") #%#))' &"#$"*)))+"!'+#!! #, '+# )" -..!!/$'#% %(# (0%(#-. *!#) $!'* /. #$'$ "#$1'

More information

The Resource-Instance Model of Music Representation 1

The Resource-Instance Model of Music Representation 1 The Resource-Instance Model of Music Representation 1 Roger B. Dannenberg, Dean Rubine, Tom Neuendorffer Information Technology Center School of Computer Science Carnegie Mellon University Pittsburgh,

More information

A New - Knot Model for Component Based Software Development

A New - Knot Model for Component Based Software Development www.ijcsi.org 480 A New - Knot Model for Component Based Software Development Rajender Singh Chhillar 1, Parveen Kajla 2 1 Department of Computer Science & Applications, Maharshi Dayanand University, Rohtak-124001,

More information

Years 9 and 10 standard elaborations Australian Curriculum: Digital Technologies

Years 9 and 10 standard elaborations Australian Curriculum: Digital Technologies Purpose The standard elaborations (SEs) provide additional clarity when using the Australian Curriculum achievement standard to make judgments on a five-point scale. They can be used as a tool for: making

More information

Component Based Mechatronics Modelling Methodology

Component Based Mechatronics Modelling Methodology Component Based Mechatronics Modelling Methodology R.Sell, M.Tamre Department of Mechatronics, Tallinn Technical University, Tallinn, Estonia ABSTRACT There is long history of developing modelling systems

More information