The Design Space of Software development methodologies

Slides:



Advertisements
Similar presentations
Object Mining: A Practical Application of Data Mining for the Construction and Maintenance of Software Components Anders Torvill Bjorvand Department of.
Advertisements

kareRCIserIsviFIsaRsþGnuvtþKMerag
Design Project (Last updated: Nov. 22/2010) Change since August 31: added the notes to the presentation in the next slide.
Applications of Synchronization Coverage A.Bron,E.Farchi, Y.Magid,Y.Nir,S.Ur Tehila Mayzels 1.
NML/436/L1-1 Nazareth Northwestern Mutual Life Participants in IS Development l A team of people comprising: l Project Manager l Systems Analysts l Specialists.
Ch 3 System Development Environment
July 11 th, 2005 Software Engineering with Reusable Components RiSE’s Seminars Sametinger’s book :: Chapters 16, 17 and 18 Fred Durão.
CS350/550 Software Engineering Lecture 1. Class Work The main part of the class is a practical software engineering project, in teams of 3-5 people There.
Investigating the Design Context.
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
Clustering methods Course code: Pasi Fränti Speech & Image Processing Unit School of Computing University of Eastern Finland Joensuu,
INTEGRATED SYSTEMS 1205 Technology Education A Curriculum Review Sabine Schnepf-Comeau July 19, 2011 ED 4752.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
10 Software Architecture CSCU 411 Software Engineering.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University VerXCombo: An.
MARTIN P. ROBILLARD, McGill University, Canada ACM Transactions on Software Engineering and Methodology (TOSEM), vol. 17, no. 4, August 2008 Presented.
SYSTEM ANALYSIS.
VTS 2012: Zhao-Agrawal1 Net Diagnosis using Stuck-at and Transition Fault Models Lixing Zhao* Vishwani D. Agrawal Department of Electrical and Computer.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
Using Social Network Analysis Methods for the Prediction of Faulty Components Gholamreza Safi.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Lean Software Management: BBC Worldwide Case Study EECS811: IT Project Management Case Study Cody Mock February 8, 2016.
Rapid Prototyping: An Alternative Instructional Design Strategy S. D. Tripp and B. Bichelmeyer (1990)
A PRELIMINARY EMPIRICAL ASSESSMENT OF SIMILARITY FOR COMBINATORIAL INTERACTION TESTING OF SOFTWARE PRODUCT LINES Stefan Fischer Roberto E. Lopez-Herrejon.
1 Week 1 Introduction, Writing a Program, Building a System Software Engineering Spring Term 2016 Marymount University School of Business Administration.
Software Maintenance Improvement Using Reverse Engineering By Falguni Patel Submitted To: - Dr. Chang- Hyun Jo CPSC 589: Seminar California State University,
Engineering Design. “There is a great satisfaction in building good tools for other people to use.” -Freeman Dyson Biology Engineering “Cells are tiny.
Open source development model and methodologies.
3D Visualization for Improvisational
Decision Support Systems
Appendix B Agile Methodologies
TI dan Pengambilan Keputusan
Fundamentals of Information Systems, Sixth Edition
Chapter 4 – Requirements Engineering
The Development Process of Web Applications
Investigating the Design Context.
TQS - Teste e Qualidade de Software (Software Testing and Quality) Introduction To Software Testing Concepts João Pascoal.
Chapter 4: Design and Problem Solving
History of Software Inspections
Summary of Bret Victor’s Paper
Introduction to System Analysis and Design
Learning Target: Engineering Design Process
Preface to the special issue on context-aware recommender systems
Systems Analysis and Design
CS 425/625 Software Engineering Software Processes
Component Based Software Engineering
Regression testing is a type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas.
The Design Space of Bug Fixes and How Developers Navigate It
Software engineering Lecture 6 Networks and Communication Department.
COMPONENT BASED SOFTWARE ENGINEERING Sumanth Jujjuru
Introduction to Systems Analysis and Design
Project Presentation Five minutes per team Contents
CSc4730/6730 Scientific Visualization
Personas Versus Participatory Design In Software Development
Advanced Programming Behnam Hatami Fall 2017.
Usability Techniques Lecture 13.
Introduction To software engineering
CS240: Advanced Programming Concepts
Practical Software Engineering
Design Space of Software Development Methodologies
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
MANAGING THE DEVELOPMENT AND PURCHASE OF INFORMATION SYSTEMS
Planning and Estimation.
Computer Science Department
McGraw-Hill Technology Education
DATABASE DESIGN & DEVELOPMENT
Appendix B Agile Methodologies
Capstone Steps.
Presentation transcript:

The Design Space of Software development methodologies CS2310: FINAL PROJECT KADIE CLANCY

Motivation A multitude of software development methodologies to choose from Selection of an appropriate methodology may not always be a straightforward process The methodology that provides the most benefit to the project may be overlooked created the design space of software development methodologies in which I seek to comprehend different methodologies plotted as points SOLUTION

Previous work Previous work has been done to apply the principles of design space analysis to a variety of projects Computer input devices [2] Design space of jet engines [3] Seminar topic: design space for bug fixes and how developers navigate it [1]

Design space dimensions Survey of popular methodologies to determine features that are descriptive and common Tried to focus on characteristics of the methodologies, rather than characteristics of the project or team While not exhaustive, dimensions descriptive enough to distinguish methodologies from one another when plotted

Design space dimensions

Application to patterns in this space Problem: problem the software is being developed to fix Context: budget, deadline, client, team, project type, etc. Solution: most appropriate methodology (out of many considered on the design space) decided upon based on how the components of the context constrain certain dimensions of the design space. for example: if client time is limited, the method chosen must be restrained to “only initial reqs” on the user involvement dimension

Conclusions Design space can be used to visualize groups of similar methodologies Note areas for the creation of new methodologies Project managers may use a space of this type as a tool in the selection of an appropriate methodology for specific projects All methods may be visualized in one place

References [1] E. Murphy-Hill, T. Zimmermann, C. Bird, and N. Nagappan, The design of bug fixes, in Proc. Int. Conf. Softw. Eng., 2013, pp. 332341. [2] S. Card, J. MacKinlay, and G. Robertson. A morphological analysis of the design space of input devices. ACM Transactions on Information Systems, 9:99122, 1991. [3] Zwicky, F. The morphological approach to discovery, invention, research, and construction. In New Methods of Thought and Procedure, F. Zwicky and A. G. Wilson, Eds. Springer-Verlag, New York, 1967, 273-297. [4] Murphy-Hill, E., Zimmermann, T., Bird, C., and Nagappan, N., 2015. The Design Space of Bug Fixes and How Developers Navigate It. IEEE Transactions on Software Engineering 41, 1, 65-81. [5] Software Development Methodologies, www.itinfo.am/eng/software- development-methodologies. [6] Software Development life sycle Models Methodologies, melsatar.blog/2012/03/15/software-development-life-cycle-models-and- methodologies.