February, 2000Programming Technology Lab, Vrije Universiteit Brussel Managerial Support for Reuse Dr. Tom Mens Programming Technology Lab Vrije Universiteit.

Slides:



Advertisements
Similar presentations
Populating Software Repositories Incentives and Domain-Specific Software Jeffrey S. Poulin Journal of Systems and Software, 1995:30, p
Advertisements

An Improved Approach to Project Estimation Based on Software Artifact Reuse by David T. Henrickson.
Content Management and the need for change in Technical Communication. By: Scott P. Abel Saliba Khoury ENGL 393 May 14 th, 2007.
SOA Architecture Delivery Process by Dr. Robert Marcus SRI International 1100 Wilson Boulevard Arlington, VA
1 Transportation Librarians Roundtable Transportation Research Thesaurus: WSDOT Use Cases February 14, 2008 Andy Everett Metadata Repository Administrator.
EDEN 2007 Naples, Italy LIFELONG LEARNING TEACHERS’ NEEDS IN VIRTUAL LEARNING ENVIRONMENTS Josep Maria Boneu 1, Maria Galofré 2, Julià Minguillón 2 1 Centre.
Software Reuse Building software from reusable components Objectives
Soft. Eng. II, Spr. 02Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 6 Title : The Software Quality Reading: I. Sommerville, Chap: 24.
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Soft. Eng. II, Spring 02Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 6 Title : The Software Reuse Reading: I. Sommerville, Chap. 20.
Building software from reusable components.
University of California, Irvine ITAG Face-to-Face -10/18/2010 Marina Arseniev.
COMPONENT-BASED SOFTWARE ENGINEERING
Problems with reuse – Increased maintenance costs; lack of tool support; not-invented- here syndrome; creating, maintaining, and using a component library.
By N.Gopinath AP/CSE. Why a Data Warehouse Application – Business Perspectives  There are several reasons why organizations consider Data Warehousing.
CS 4310: Software Engineering
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14Slide 1 Design with Reuse l Building software from reusable components.
Module 3: Business Information Systems Chapter 11: Knowledge Management.
Managing Software Quality
1. Extensive Experience with Quality Assurance and Quality Control  Experienced with Retail Systems  Experienced with internal systems 
Second-Hand Shopping: Efficient Component Reuse TopCoder, Inc. Sean Campion, Project Manager [scamp]
Reuse Standards Dr. Carma McClure Extended Intelligence, Inc. Copyright (c) 1998 by Extended Intelligence, Inc.
Object-oriented Software Engineering with Reuse Contracts Koen De Hondt, Carine Lucas, Kim Mens, Tom Mens, Patrick Steyaert, Roel Wuyts Programming Technology.
Security Professional Services. Security Assessments Vulnerability Assessment IT Security Assessment Firewall Migration Custom Professional Security Services.
Project Coordinators: Eduardo Santana de Almeida Silvio Romero de Lemos Meira Federal University of Pernambuco Informatics Center Recife Center for Advanced.
Feasibility Study.
REUSE-Re-Engineering The Software Process By Venkat Praveen Medikonda.
SOFTWARE REUSABILITY AJAYINDER SINGH CSC What is Software Reuse Software reuse is the process of implementing or updating software systems using.
Introduction To Software Component Reuse
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project.
This chapter is extracted from Sommerville’s slides. Text book chapter
Project Administration Chapter-4. Project Administration Project Administration is the process which involves different kinds of activities of managing.
CSE 219 Computer Science III Program Design Principles.
Introducing Software Product Lines (SPL) Silvio Romero de Lemos Meira Eduardo Santana de Almeida
Chapter 6 Architectural Design.
Strategically Managing the HRM Function McGraw-Hill/Irwin ©2012 The McGraw-Hill Companies, All Rights Reserved.
Massachusetts Open Standards Policy Claudia Boldman Director of Policy and Architecture Information Technology Division, MA.
The Traditional System Development Life Cycle There are a number of important steps in the creation of a system, regardless of which approach you use.
Attack Tool Repository and Player for ISEAGE May06-11 Abstract Today’s world is changing shape as it increases its dependency on computer technology. As.
Supporting Researchers and Institutions in Exploiting Administrative Databases for Statistical Purposes: Istat’s Strategy G. D’Angiolini, P. De Salvo,
Quality Management Managing the quality of the software process and products.
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
A Formal Model for Object-Oriented Software Reuse Kim Mens Programming Technology Lab Vrije Universiteit Brussel FNRS MeetingMay 6th, 1997.
Firmware - 1 CMS Upgrade Workshop October SLHC CMS Firmware SLHC CMS Firmware Organization, Validation, and Commissioning M. Schulte, University.
IBM Software Group ® Managing Reusable Assets Using Rational Suite Shimon Nir.
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2004 Session 5 Lecture # 4 – October 5, 2004.
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2000 Session 4 Lecture # 3 - September 28, 2004.
Expert Group Meeting on the Revision of the Handbook on the Management of Population and Housing Censuses New York, 14 – 17 December 2015 Overview of the.
Refactoring Agile Development Project. Lecture roadmap Refactoring Some issues to address when coding.
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
Reuse Contracts A Historic Overview Dr. Tom Mens Programming Technology Lab Vrije Universiteit Brussel Course OOSE.RC EMOOSE
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
Identifying “Best Bet” Web Search Results by Mining Past User Behavior Author: Eugene Agichtein, Zijian Zheng (Microsoft Research) Source: KDD2006 Reporter:
Collaborative Systems Developing Collaborative Systems with a Reuse Driven Process.
MSG Reuse Catalog T.W. van den Berg 7 April 2010.
Improving performance, reducing risk Dr Apostolos Noulis, Lead Assessor, Business Development Mgr Thessaloniki, 02 June 2014 ISO Energy Management.
ITIL® Service Asset & Configuration Management Foundations Service Transition Thatcher Deane 02/17/2010.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Agenda  Purpose  Processes  Deliverables  Executing Activities 4.3.
Certification of Reusable Software Artifacts
Programming Technology Lab, VUB
Initiating systems development
Applications of Data Mining in Software Engineering
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Chapter 13 Quality Management
Software Engineering with Reusable Components
Re- engineeniering.
Presentation transcript:

February, 2000Programming Technology Lab, Vrije Universiteit Brussel Managerial Support for Reuse Dr. Tom Mens Programming Technology Lab Vrije Universiteit Brussel Course OOSE.RC EMOOSE

February, 2000Programming Technology Lab, Vrije Universiteit Brussel Managerial Issues in Reuse I. Setting up a reuse plan II. Selecting an organisational model III. Defining a reuse team IV. Other Issues

February, 2000Programming Technology Lab, Vrije Universiteit Brussel References Succeeding with Objects: Decision Frameworks for Project Management –Adele Goldberg, Kenneth S. Rubin. Addison-Wesley, A Reuse Business Model –Adele Goldberg. Software-Concepts and Tools 19:11-13, Springer-Verlag, Software Reuse: Architecture, Process and Organization for Business Success –Ivar Jacobson, Martin Griss, Patrik Jonsson. Addison-Wesley, 1997.

February, 2000Programming Technology Lab, Vrije Universiteit Brussel I. Setting up a reuse plan 1. Define reuse 2. Set up a process for populating the reuse repository 3. Set up a process for sharing reusable assets 4. Set up a process for maintaining reusable assets I

February, 2000Programming Technology Lab, Vrije Universiteit Brussel I.1 Define Reuse What should be reused? –code, analysis & design models, documentation –applications, patterns, frameworks, algorithms –domain-specific assets –people! How should it be reused? –black-box, white-box, grey-box, glass-box I

February, 2000Programming Technology Lab, Vrije Universiteit Brussel I.2 Populating the reuse repository Identify & prioritise categories of reusable assets –Identify assets useful to a business unit –Identify the needs common to multiple projects –Identify assets requested by potential reusers aim for quality rather than quantity Acquire reusable assets –From a vendor: existing product, or custom-made –Build your own assets, or reuse from other internal projects I

February, 2000Programming Technology Lab, Vrije Universiteit Brussel I.2 Populating repository ctd... Certify reusable assets –Do the assets meet expected level of quality? –Determine overall certification goal –Decide how to certify each kind of asset –Consider potential liability associated with certification Classify and store reusable assets –How should assets be stored for easy retrieval? Relational DB / OODB / hypertext / flat file system –What classification structure should be used? Enumeration / key-value / faceted / ontologies –How will assets be catalogued using this structure? I

February, 2000Programming Technology Lab, Vrije Universiteit Brussel I.3 Sharing Reusable Assets Communicate availability of reusable assets Locate and retrieve reusable assets –search by using wild cards / thesauri (for synonyms) / regular expressions / natural language / … –allow for access privileges (security) Understand and use reusable assets –documentation should suggest best way to use an asset, provide examples, potential problems,... I

February, 2000Programming Technology Lab, Vrije Universiteit Brussel I.4 Maintaining Reusable Assets Update reusable assets –Who is responsible for correcting defects? –What with backward compatibility? Update reusers –Who is in charge of communicating updates? –How to inform reusers of updates? –Should delivered applications be affected by new versions of reusable assets? How? I

February, 2000Programming Technology Lab, Vrije Universiteit Brussel II. Selecting an organisational model 1. Ad-Hoc Model 2. Supply and Demand Model 3. Expert Services Model 4. Product Center Model 5. Commercial-off-the-shelf (COTS) Model II

February, 2000Programming Technology Lab, Vrije Universiteit Brussel II.1 Ad-Hoc Model Flea-market: –Anything from previous projects can be stored in the reuse repository in any form –Reusable assets have no guarantee of quality, reliability or robustness –No explicit support is provided II

February, 2000Programming Technology Lab, Vrije Universiteit Brussel II.2 Supply & Demand Model Virtual marketplace Similar to ad-hoc model except that: –shoppers can complain when a desired asset does not exist –assets that are never reused are removed after some time –assets that are frequently reused are preferred over other ones II

February, 2000Programming Technology Lab, Vrije Universiteit Brussel II.3 Expert Services Model “Reuse competence center” staffed by independent “reuse team”. Only this team needs to be trained for reuse Reusable artifacts are certified Redundancies in repository are minimised Reuse engineers are “loaned” to work on specific projects. Project artifacts are selected to store in repository. Substantial financial cost for setting up reuse competence center, but high return on investment. II Recommended as best model by Goldberg & Rubin

February, 2000Programming Technology Lab, Vrije Universiteit Brussel II.4 Product Center Model Similar to “Expert Services”, but –Reuse Engineers are not loaned to projects –Individual project developers must know how to reuse assets from the repository –Project developers need to be trained for reuse and most know the reuse tools –Communication between reuse team and potential reusers is not assured II

February, 2000Programming Technology Lab, Vrije Universiteit Brussel II.5 COTS Model All reusable assets are acquired from outside vendors Assets are not modified by the organisation –“as-is” or “plug-and-play” reuse –component-based development II

February, 2000Programming Technology Lab, Vrije Universiteit Brussel III. Defining a reuse team Reuse manager –manages the reuse program, proposes definition for reuse, chooses organisational reuse model Reuse administrator –Identifies and acquires reusable assets Reuse engineer –develops reusable assets, consults on projects Reuse librarian Reuse evaluator Reuse maintainer III

February, 2000Programming Technology Lab, Vrije Universiteit Brussel IV. Other Issues Different levels of reuse –Intra-project reuse –Reuse within each group or division –Corporate or enterprise-wide reuse Different ways to motivate reuse –Pay royalties to developers of reusable assets problematic in presence of inheritance –Pay developers to reuse existing assets negative impact on product quality (reuse must be a means, not a goal) –Punish developers for not reusing does not promote proper atmosphere –Reward appropriate reuse only