{"title":"Software Product Lines: Reuse That Makes Business Sense","authors":"Linda M. Northrop","doi":"10.1109/ASWEC.2006.45","DOIUrl":"https://doi.org/10.1109/ASWEC.2006.45","url":null,"abstract":"Summary form only given. Traditionally, software-intensive systems have been acquired, developed, tested, and maintained as separate products, even if these systems have a significant amount of common functionality and code. Such an approach wastes technical resources, takes longer, and costs more than necessary. A product line approach to software can reduce development cycles, improve return on software investments, improve software system integration, and give an organization more future options. Building a new product or system becomes more a matter of assembly or generation than creation, of integration rather than programming. Organizations of all types and sizes are discovering that a product line strategy, when skillfully implemented, can improve productivity, quality, and time to market. Software product lines present at long last a reuse strategy with real economic benefit. Making the move to product lines, however, is a business and technical decision and requires considerable changes in the way organizations practice software engineering, technical management, and organizational management. This article explores the basic concepts of software product lines, share experience reports from companies employing the paradigm, and explore the software engineering and management practices necessary to develop a successful software product line.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"90 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122790846","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Document Driven Disciplined Development of Software","authors":"D. Parnas","doi":"10.1109/ASWEC.2005.23","DOIUrl":"https://doi.org/10.1109/ASWEC.2005.23","url":null,"abstract":"It is no accident that the branches of engineering are called \"disciplines\". Every properly educated engineer has learned that the design of quality products requires discipline and a willingness to follow standard procedures. Engineers understand that they must produce a specified set of documents and perform a variety of analyses whose results must be included in the documents. Engineers who do these things are less likely to produce a defective product. In many jurisdictions, engineers who fail to follow the standard discipline may be considered to have been negligent. Software development should not be different but most developers have not been taught the appropriate discipline and neither their employers nor the customers know what to demand. At the heart of the problem is our failure to agree on a set of documents that contain analyzable descriptions and specifications. We begin with highly simplified \"models\" that have a vague resemblance. Most of these models have properties that could never be implemented and ignore critical facts that are essential for trustworthy products.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115297432","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The Challenges of Managing a Global Software Engineering Capability: Theory to Practice","authors":"D. Barbagallo","doi":"10.1109/ASWEC.2005.47","DOIUrl":"https://doi.org/10.1109/ASWEC.2005.47","url":null,"abstract":"The emergence of \"off shoring or outsourcing\" in the debate about where best to do software development and applications support has added yet another layer of complexity into the domain of development managers. This is on top of the usual plethora of issues we all know and love such as configuration and requirements management, design, enhancements, reuse and refactoring, baseline controls, IP protection, technology issues, standards, testing, porting and distribution, support and maintenance. All these make the practice of managing a global software engineering capability especially interesting. The various commentaries on good software engineering practice are often about what to do on single projects in serial environments to manage the risks associated with the various issues raised above. In Mincom's commercial environment there exists the added challenge of the need for integration of a range of different but concurrent projects together with the complexity of managing the delivery of this capability globally. The competition for resources together with skills matching ensures a number of management challenges. This presentation addresses some of the techniques used to; enforce standards without stifling innovation, improve software quality without imposing zealous quality overheads, compare and contrast outsourcing options. Some observations on the use of agile methods are given as well as an impact analysis of resource balancing.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127637618","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Virtual Machines, Managed Code and Component Technology","authors":"John Gough","doi":"10.1109/ASWEC.2005.49","DOIUrl":"https://doi.org/10.1109/ASWEC.2005.49","url":null,"abstract":"Abstract machines have been used as an implementation mechanism for programming languages for more than thirty years. In their latest incarnation execution engines based on virtual machines offer \"managed execution \". The implications of this change go far beyond the superficial advantages of platform portability and go to the heart of software reliability. In this paper it is argued that managed execution platforms such as the .NET common language runtime and the Java virtual machine form the only reasonable basis for trustworthy component software. There is also an overview of current research in this field, including the vexed question of version evolution.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123223093","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Software Patents","authors":"C. Cifuentes","doi":"10.1109/ASWEC.1997.623761","DOIUrl":"https://doi.org/10.1109/ASWEC.1997.623761","url":null,"abstract":"Over 6000 patents were issued last year in the US for soji’ware related inventions. Patent protection is available for software developments in Australia, US and Europe in addition to copyright protection. Howevel; little use of the system has been made in Australia. ‘We review the diferent types of intellectual property systems, and the use of the patent system in Australia in relation to protection of software-related inventions. Our panelists wilr‘ discuss the meaning of the patent system, rights obtained, applicability to software, myths, and the process of applying for a patent in Australia.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126352007","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A System for Evaluating the Congruence of Software Process Models","authors":"N. Madhavji","doi":"10.1109/ASWEC.1996.10004","DOIUrl":"https://doi.org/10.1109/ASWEC.1996.10004","url":null,"abstract":"It is increasingly being recognized that the design, customization, reuse and improvement of software processes are important for developing quality software within budget and on time. There is an urgent need for methods and tools to assist in these tasks. In this talk, we describe one of several works at McGill a software system to address these needs. The system uses an empirically derived “contingency model” that describes the degree to which the process/context relationships contribute to the success of a process. It uses this model along with the characteristics of a subject software process and its environment to: (i) evaluate how fit (or congruent) the process is in the given environment, and (ii) identify those relationships that are considered to lower process congruency. Based on the feedback received from the system, the process engineer can change the values of appropriate process/context variables in order to improve process congruency. We demonstrate the usage of the system by giving examples from three applications: (a) congruence evaluation and improvement of a process model, (b) selection of the fittest process model from among several models, and (c) process reuse. The data used in the examples was gathered in a field study of fifteen software projects, with particular focus on requirements engineering.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1996-07-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128478335","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Industry-University Partnerships: The Wave of the Future?","authors":"N. Mead","doi":"10.1109/ASWEC.1996.10002","DOIUrl":"https://doi.org/10.1109/ASWEC.1996.10002","url":null,"abstract":"The need for close collaboration between industry and universities has resulted in a trend towards industry-university partnerships in software engineering. This need for collaboration has been caused by two separate trends in academia and industry. On the one hand, universities are in stiff competition for the best students, and have experienced a reduction in funding from traditional sources, such as government grants. On the other hand, industry recognizes the unique role the universities can play in both preparing students for the workplace and enhancing the skills of professionals already on the job. Moreover, universities want to provide students with industry experience so that they will be better prepared for their careers, and industrial organizations welcome students who have practical experience to go with their relevant course work.The number of industry-university partnerships has been increasing over the last five years, but has grown dramatically over the past year. This dramatic growth is evident when one examines successive releases of the SE1 directory on industry-university collaborations in software engineering. The initial release of the directory in 1994 included seven such collaborations (Carpenter 1994). In one year, the number of collaborations more than doubled to 16 (Carpenter 1995).Most collaborations occur between industrial organizations and universities that are in close proximity. The industrial organizations often have a role in curriculum definition, and provide the students with the opportunity for hands-on experience. Sometimes courses are delivered at the industrial locations. One early example of such a collaboration occurred between Florida Atlantic University (FAU) and a group of local industrial organizations, such as IBM and Motorola (Coulter & Dammann 1994). The industrial organizations wanted their professional employees to have a better understanding of good software engineering practice, and FAU wanted to offer a master's degree program in software engineering (MSE). FAU instituted a certificate program for all those students who completed the five core software engineering courses, based on the SE1 model curriculum (Ardis and Ford 1989), and allowed the students the option to continue for an MSE degree. Sixty-eight students received the certificate, and about forty students went on to complete the MSE. In order to jump start the program, the SE1 Academic Series videotapes were used initially, in tutored video format.The benefits of such collaborations are obvious. The university establishes a close working relationship with industrial partners and, in the case of graduate degree programs, has a steady source of qualified students. The industrial organizations get excellent education for their staff, helping the organizations in meeting long-term learning objectives.There are also some risks. There can be unrealistic expectations on both sides. The university might view industry solely as a source of ","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1996-07-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131268231","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Verification, Validation and the Future of Software Engineering","authors":"J. Staples","doi":"10.1109/ASWEC.1996.10006","DOIUrl":"https://doi.org/10.1109/ASWEC.1996.10006","url":null,"abstract":"It is proposed that the central purpose of engineering is to create products which meet customer needs; and that the central problem of engineering is to be able to deliver with each product, adequate assurance that those needs are met. These propositions are well accepted in most branches of engineering. It is argued that software engineering is beginning to be transformed by increasing concern for these propositions, and that this transformation will continue for decades into the future. 2 O-8186-7635-3/96 $05.00","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1996-07-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126393301","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"State of the Art v State of the Practice: A Personal Perspective on the Changes in the Australian Software Engineering Landscape","authors":"J. Edwards","doi":"10.1109/ASWEC.2006.46","DOIUrl":"https://doi.org/10.1109/ASWEC.2006.46","url":null,"abstract":"Summary form only given. The Global Software Industry has undergone some dramatic changes. From the high tech bubble of late 1990's, to the tech crash of 2001, to the globalisation of IT services, to the beginning of utility computing, to most recently the impact of governance regulations such as Sarbannes Oxley. The Australian software industry has also been dramatically affected by these global changes. These changes have impacted the structure of market for software engineering services, changed the willingness of investors to enter the software engineering market and changed the nature of the demand for, and the suppliers of, software engineering services. All these changes have had significant impacts on the state of practice of software engineering - some good, some not so good. This presentation provides a personal view of these changes and how they have affected the state of practice of software engineering in the Australian market. In particular the presentation looks at how attempts to undertake process improvement have changed over this time. Specific examples of our own work in deploying a state of the art software development process, Process Mentor, to software companies large and small provides the backdrop to these discussions.","PeriodicalId":171277,"journal":{"name":"Australian Software Engineering Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124672925","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}