Software Development Factories, the Project Management Perspective



Similar documents
Quality Perspective: Managing Software Development Projects

Project management for cloud computing development

Scorecard and KPIs for monitoring software factories effectiveness in the financial sector

SOFTWARE QUALITY MODELS: A COMPARATIVE STUDY

Nydia González 1, Franck Marle 1 and Jean-Claude Bocquet 1. Ecole Centrale Paris, FRANCE

Best Practices in Project Management

Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction

PMBOK for Dummies. Sean Whitaker, PMP Vice President, PMINZ

Kathy Schwalbe, Ph.D., PMP Augsburg College. ; \ COURSE TECHNOLOGY *» CENGAGE Learning-

Strategic Marketing Planning Audit

Success Factors of Agile Software Development

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3

ISO, CMMI and PMBOK Risk Management: a Comparative Analysis

Understanding Operations Management The Open University (2011)

ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN

Keywords: - Software Product Lines (SPLs), Product Line Engineering (PLE), Core Assets, Software Product Line Development.

SOFTWARE QUALITY & SYSTEMS ENGINEERING PROGRAM. Quality Assurance Checklist

PMI Standard for Portfolio Management

Course Title: Planning and Managing Agile Projects

CAPABILITY MATURITY MODEL INTEGRATION

Introduction to ITIL for Project Managers

Michael Landry, MBA, PMP Chief Project Controller

Developing CMMI in IT Projects with Considering other Development Models

Introduction to SOA governance and service lifecycle management.

A Grid Architecture for Manufacturing Database System

Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture

Classical Software Life Cycle Models

Defining the Relationship between Product Life Cycle and Project Life Cycle

Business Modeling with UML

YIIP1100 PROJECT MANAGEMENT

Project Scope Management in PMBOK made easy

Redesigned Framework and Approach for IT Project Management

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

Keys to a Successful Outsourcing Transition

Software Development Methodologies

The Contextualization of Project Management Practice and Best Practice

ON CODES OF ETHICS FOR WEB DESIGN

SOA + BPM = Agile Integrated Tax Systems. Hemant Sharma CTO, State and Local Government

Prof. Paolo Nesi. Lab: DISIT, Sistemi Distribuiti e Tecnologie Internet

Quality Management. Lecture 12 Software quality management

The Evolution of the Automobile Industry: Innovations of a Few and Subsequent Oligopoly Formation

Project Cost Management - 2 Days

MANAGING INFORMATION TECHNOLOGY PROJECTS

A managerial framework for an Electronic Government Procurement Project: Complex software projects management fundamentals

STAGES FOR THE DEVELOPMENT OF THE AUDIT PROCESSES OF DISTRIBUTED INFORMATICS SYSTEMS 1

Lean vs. Agile similarities and differences Created by Stephen Barkar -

Managing Outsourcing Contracts

Information Technology Project Management, Sixth Edition

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

How To Understand Cloud Computing

Introduction to IT Project Management

CBI Framework for Collaborative Management in Knowledge Society

Workflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment

Software Engineering

Best Practices Statement Project Management. Best Practices for Managing State Information Technology Projects

Optimizing IV&V Benefits Using Simulation

A Contribution to Expert Decision-based Virtual Product Development

An Approach to Proactive Risk Classification

IT Services Management Service Brief

ITSM 101. Patrick Connelly and Sandeep Narang. Gartner.

Agenda. 0 Agenda review 2 minutes. 0 Chapter of the week 50 minutes. 0 Q&A of chapter 10 minutes. 0 Break 10 minutes. 0 Exercises 25 minutes

Agency for State Technology

EFFORT ESTIMATION IN QUOTATION PHASE OF COMPLEX PROJECTS DEVELOPMENT

Globalizing Development of ERP Applications for SMB Selected Topics Andrej DANKO i

How PRINCE2 Can Complement PMBOK and Your PMP Jay M. Siegelaub Impact Strategies LLC. Abstract. About PRINCE2

CHAPTER 5 COMPETITIVE ADVANTAGE AND STRATEGIC MANAGEMENT FOR PERFORMANCE EXCELLENCE

ISO 14001: White Paper on the Changes to the ISO Standard on Environmental Management Systems JULY 2015

WBS Templates for IT/Software Projects, AIPM IRC Bibliography, 2 nd February, 2005

Technology. Accenture Data Center Services

BRIDGE. the gaps between IT, cloud service providers, and the business. IT service management for the cloud. Business white paper

A model for Business Intelligence Systems Development

Contextualization of Project Management Practice and Best Practice

Blend Approach of IT Service Management and PMBOK for Application Support Project

MatchPoint Benefits with SharePoint 2013

How To Develop An Enterprise Architecture

Key Qualifications See below

Study on Risk Approaches in Software Development Projects

Transcription:

Page 14 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 Software Development Factories, the Project Management Perspective Felician ALECU, PhD, University Lecturer Department of Economic Informatics and Cybernetics The Bucharest University of Economic Studies, Romania E-mail: alecu[at]ase[dot]ro; Web Page: http://alecu.ase.ro Abstract: In a software factory, the applications are developed in the same way Henri Ford started manufacturing cars. In such a way, a customized solution could be obtained within a reasonable budget and within the foreseen timeframe. This development method offers a flexible solution that can be readapted rapidly and automatically to the changing business needs, so the Project Management becomes a real challenge. Keywords: software factory, software development, project management, project life cycle, project phases. The Concept of Software Factory Software factories are the next logical step in the journey of software development. A traditional factory is (definition according to dictionary.com): a building or group of buildings with facilities for the manufacture of goods.

Page 15 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 any place producing a uniform product, without concern for individuality (see Figure 1). Figure 1 The Traditional Factory Model However, a description of the software factory cannot be found into the dictionary, so an alternative source, wikipedia.org, will be used for a definition (Figure 2): a software factory is an organizational structure that specializes in producing computer software applications or software components according to specific, externally-defined end-user requirements through an assembly process. a software factory applies manufacturing techniques and principles to software development to mimic the benefits of traditional manufacturing. Software factories are generally involved with outsourced software creation.

Page 16 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 Figure 2 The Software Factory Model As we can see in the pictures above (Figure 1 and Figure 2), the factory paradigms in traditional manufacturing and software development are very different since the software factory is not dealing at all with replicas of the items to be manufactured. Software factories are already a reality of our days since the factory approach can be taken for software development simply because the software development is no different from producing cars, for example. In an article in the June 2010 edition of the IEEE Computer magazine, Margaria and Steffen suggest that the automobile industry matured into a mass market provider through: Better, more robust components Better streets Better driving comfort Better production processes Better maintenance & support

Page 17 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 The authors argue that the equivalents of these in the software industry are not all that different. We should be striving for: Better, more robust components Better connection and interoperability Better user comfort Better production processes Better maintenance & support Another interesting point of view would be that the software factory resembles more to construction industry than traditional manufacturing because every product is different and it needs to be assembled from scratch, as see into the next image (Figure 3). Figure 3 Software Factory, Construction or Manufacturing?

Page 18 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 The Project Management Perspective Project Management becomes a real challenge for the software factories of our days, so the question that appears here is how to properly manage such a projects? Is there a way to adapt the existing project management principles for software development factories? The starting idea could be the PMI s point of view related to the way in which projects from various fields could be managed. The theory states that any project should use the same project management methodology (also called process), since the methodology is industry independent. By looking the things from this perspective, any software development project from the factory will cover the same five project management process groups (Figure 4) : Initiating based on the high-level planning completed at this level, it could be decided the project will be selected to be accomplished Planning the detailed project management plans are developed Executing performing the work to be done according to the plans Monitoring and Controlling verify the project is on the track in terms of scope, time, cost, risk and quality Closing make sure all the work is completed according to the plans and the project met the objectives stated into the project management plans

Page 19 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 Figure 4 PMI s Project Management Process The project management process groups can only be applied together with a progression of phases that are industry dependent, also called project lifecycle, so projects from various fields will implement different stages (generally sequential). Small projects typically use a single set of project management process groups, as illustrated in Figure 5, while large projects are usually divided into phases, each phase having its own set of project management process groups (Figure 6).

Page 20 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 PROJECT Figure 5 Project Management Process Groups for Small Projects PROJECT Figure 6 Project Management Process Groups for Large Projects

Page 21 Oeconomics of Knowledge, Volume 4, Issue 1, 1Q, Winter 2012 Conclusions Software factories can be found in almost any area of software development. Factories can be implemented for several types of software projects, from mobile applications to complex collaborative systems. The success or failure of such factory oriented software development could be influenced by the associated project management process. In order to be successful, a very good project management process is required and it has to be adapted to the specific characteristics of the factory. References [1] Project Management Institute, A Guide to the Project Management Body of Knowledge: PMBOK Guide, 4th edition, Project Management Institute, 2008 [2] J. Jeston, J. Nelis, Business Process Management, Second Edition: Practical Guidelines to Successful Implementations, Butterworth- Heinemann, 2008. [3] M. Hotle, S. Landry, Application Delivery and Support Organizational Archetypes: The Software Factory, Gartner Research Report G00167531, May 2009. [4] P. Clements and L. Northrop, Software Product Lines: Patterns and Practices, 3rd Edition, Addison Wesley, 2001. [5] A. Brown, A. Lopez, Luis Reyes, Practical Experiences with Software Factory Approaches in Enterprise Software Delivery, ICSEA 2011, The Sixth International Conference on Software Engineering Advances, Barcelona, Spain, October 23, 2011.