Warren Harrison

Warren Harrison
  • Professor Emeritus at Portland State University

About

103
Publications
17,850
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
2,310
Citations
Introduction
Current institution
Portland State University
Current position
  • Professor Emeritus
Additional affiliations
January 2000 - January 2000
September 1988 - present
Portland State University
August 1984 - August 1988

Publications

Publications (103)
Article
This tutorial will introduce participants to the field of digital forensics, and provide guidance in the development of a course that introduces students from a variety of backgrounds to the principles involved in digital investigations. The course is targeted at upper division undergraduates, but may also be suitable for graduate students.
Article
Full-text available
The outgoing EIC for IEEE Software reflects on the personal and professional rewards of volunteerism that sustain the technical community and society at large.
Article
Full-text available
Recently, voice controlled software has begun to be used in public safety applications. The motivation for these efforts is to improve officer safety by allowing the officer to operate the police cruiser's electronics and mobile data terminal (MDT) using voice commands so he can continue to focus on the road when driving. Project 54, which is repre...
Article
Full-text available
Technology transfer is the process of transferring an idea from its originator to someone who can use it. Typically, this implies the transfer of research developed in academia to industry. While there's no dearth of technologies that academic researchers have available and are anxious to transfer, precious little technology transfer involving acad...
Article
Full-text available
The typical approach to creating an examination disk for exercises and projects in a course on computer forensics is for the instructor to populate a piece of media with evidence to be retrieved. While such an approach supports the simple use of forensic tools, in many cases the use of an instructor-developed examination disk avoids utilizing some...
Article
Full-text available
RESUMEN RESUMEN A recent survey conducted by Sophos (www.sophos.com/pressoffice/news/articles/2006/04/passworddadvice.html) asked, "Do you use the same password for multiple Web sites?" Their admittedly unscientific results confirmed what most of us would expect: 41 percent of the respondents said they always use the same password, 45 percent sai...
Article
Full-text available
Back in the 1980s when actor Lorne Greene served as the pitchman for Alpo dog food, the TV commercials were careful to point out that he indeed fed Alpo to his dogs. So, the idea that someone would use the products they were making became known as "eating your own dog food." An alternative explanation for the term I've heard is that each year the p...
Article
Full-text available
Any of us might change jobs in the future, and we know we’ll need references if and when the time comes. Yet few people realize that just like managing your education and training for the future, you can manage your references too. Here are some tips.
Article
Full-text available
Today's content management systems produce Web pages on the fly that look just like ones handcrafted by humans. However, many CMSs' URLs are extremely long and undiscipherable, so you might not be able to tell what's on that page by just looking at the URL. While those systems' designers seem to know little about how users will use that content, ot...
Conference Paper
Full-text available
This paper envisions a new computing paradigm that promises a revolution in the ubiquity of first class computing devices. This revolution will lead to a plethora of new applications, opportunities and challenges for software developers
Conference Paper
In many industries, the adoption of technology developed at universities and independent research labs is the prevalent paradigm. However, in the software space, this is a relatively rare occurrence. In many cases, academic software engineering tends to lag rather than lead commercial developments. The goal of this Workshop is to open a dialouge be...
Article
Full-text available
By the time this issue comes out, every reader will be familiar with the devastation inflicted by Hurricane Katrina on the Gulf Coast of the United States. Even though the victims' pain and suffering are certainly no worse than that borne by victims of any natural or man-made disaster, this particular disaster is notable for two reasons. First, sel...
Article
Full-text available
The goal of the Workshop on Technology Transfer in Software Engineering is to increase our understanding of technology transfer in software engineering, and to learn from successful case studies. We wanted to bring researchers and practitioners together to create an inventory of problems in software engineering technology transfer as seen from both...
Article
Full-text available
A recent discussion with colleagues from my university's business school and computer science department focused on identifying the most critical knowledge for software developers. My computer science colleagues' perspective was quite interesting. They acknowledged that once a software developer has managed to climb into a second- or third-level ma...
Article
Full-text available
In many cases, the only thing preventing insiders from exploiting their privileged access and knowledge is the perception that their interests and the organization's are aligned. If delivering a project on time or making a customer happy is in the insiders' best interests, they will likely contribute and work toward a common goal. However, when ind...
Article
Full-text available
The author describes several different techniques for doing software development research--for example, testing the value of a new tool or technique. He describes the comparative group experiment, the field study, the case study, and the single-subject experiment, and he advocates that more people try using the last approach.
Article
Full-text available
The Netcraft annual Web server survey indicates more than 56 million Web servers were active at the end of 2004, and an average of 911,000 new sites are added each month. This doesn't include computers connected to the Internet as clients. Software developers continue to take advantage of this widespread connectivity. If developers can reduce that...
Article
Full-text available
If a company wants employees to learn a particular review technique or programming language, it will make sure they get "just in time" training: they learn exactly what they need, exactly when they need it. However, far fewer companies are interested in "just in case" training, keeping their employees current in their fields. The author discusses h...
Article
The use of computers to either directly or indirectly store evidence by criminals has become more prevalent as society has become increasingly computerized. It is now routine to find calendars, e-mails, financial account information, detailed plans of crimes, and other artifacts that can be used as evidence in a criminal case stored on a computer's...
Article
Full-text available
Today, the overwhelming majority of police officers are unprepared to deal with crimes involving either the direct or the indirect use of computers. The average officer receives little or no instruction in computer forensics during training at the Police Academy. The Hillsboro Police Reserve Specialist program of Oregon provides suitably qualified...
Article
A neglected aspect of software measurement programs is what will be done with the metrics once they are collected. Often databases of metrics information tend to be developed as an afterthought, with little, if any concessions to future data needs, or long-term, sustaining metrics collection efforts. A metric repository should facilitate an on-goin...
Article
Full-text available
RESUMEN RESUMEN We cannot expect secure computing from the vast majority of software applications when they’re written with little, if any, knowledge of generally accepted good practices such as specifying before coding, systematic testing, and so on. Although using professional programmers doesn’t guarantee correctness, security, or maintainabil...
Article
Full-text available
Software organizations look at their own achievements in different ways depending on how much they actually know. In other words, people (and organizations) that aren't too good at what they do often don't realize it by virtue of the fact that they aren't too good at what they do. Warren Harrison ties the findings from psychology research to the so...
Article
Full-text available
We often hear the term best practices used in software development contexts We often hear the term best practices used in software development contexts. It’s easy to fall into the habit of using the term indiscriminately for any activity that looks even remotely useful. The editor in chief looks at the term’s possible meanings, how it can affect co...
Article
Full-text available
Most software development organizations strive to become learning organizations, but far too few are successful Most software development organizations strive to become learning organizations, but far too few are successful. Why is this so rare? With some reflection, it’s easy to identify a three-step process any learning organization must master....
Article
Full-text available
The distant tech boom of the nineties pushed salaries for software professionals up substantially to current levels, but that's about our only link to the time when companies were begging for technically astute personnel. Most observers say that the ...
Article
Full-text available
Adaptive maintenance is software maintenance performed to make a computer program usable in a changed environment [IEEE 1990]. A type of adaptive maintenance that is beginning to be encountered is the adaptation of services currently offered over the Internet for access by mobile devices, especially Internet-capable mobile phones. The delivery of "...
Article
Full-text available
Most software organizations possess a large, but informal, corporate memory. Large, because the experiences of every software engineer and manager contribute to the whole. Informal because there is seldom an explicit mechanism for disseminating this wisdom except "over the water cooler". As a consequence, the same problems and mistakes continue to...
Article
maturity, a measurable return for each benefit must be established. Increased predictability is known to be one of the benefits of process improvement. However, quantifying financial benefits from improvements in predictability is not as straightforward as quantifying financial benefits of other improvements such as increased productivity and decre...
Article
Full-text available
Using agile methods to develop large systems presents a thorny set of issues. If large teams are to produce lots of software functionality quickly, the agile methods involved must scale to meet the task. After all, a small team could create the software ...
Article
Full-text available
Some types of research are of interest to all software readers, and all types o f research are of interest to some software readers; but not all types of research are of interest to all Software readers. The key to success for IEEE Software, or any other publication trying to disseminate research results to practitioners, is to identify research th...
Conference Paper
Full-text available
Most software organizations possess a large, but informal, corporate memory. This corporate memory is comprised of the experiences of every software engineer and manager, yet it is informal because there is seldom an institutionalized mechanism for disseminating the wisdom. In order to exploit this informal corporate memory, the key points of each...
Article
Full-text available
First Page of the Article
Conference Paper
Full-text available
Adaptive maintenance is software maintenance performed to make a computer program usable in a changed environment [IEEE 1990]. A hype of adaptive maintenance that is beginning to be encountered is the adaptation of services currently offered over the Internet for access by mobile devices, especially Internet-capable mobile phones. The delivery of "...
Conference Paper
The field of software economics seeks to develop technical theories, guidelines, and practices of software development based on sound, established, and emerging models of value and value-creation - adapted to the domain of software development as necessary. The premise of the field is that software development is an ongoing investment activity - in...
Article
Full-text available
The Law Enforcement community possesses a large, but informal, community memory with respect to digital forensics. Large, because the experiences of every forensics technician and investigator contribute to the whole. Informal because there is seldom an explicit mechanism for disseminating this wisdom except "over the water cooler". As a consequenc...
Conference Paper
Full-text available
In this paper, we present a "forward-looking" decision support framework that integrates timely metrics data with simulation models of the software development process in order to support the software project management control function. This forward-looking approach provides predictions of project performance and the impact of various management d...
Conference Paper
The field of software economics seeks to develop technical theories, guidelines, and practices of software development based on sound, established, and emerging models of value and value-creation - adapted to the domain of software development as necessary. The premise of the field is that software development is an ongoing investment activity - in...
Conference Paper
In this paper, we present a "forward-looking" decision support framework that integrates timely metrics data with simulation models of the software development process in order to support the software project management control function. This forward-looking approach provides predictions of project performance and the impact of various management d...
Conference Paper
The field of software economics seeks to develop technical theories, guidelines, and practices of software development based on sound, established, and emerging models of value and value-creation---adapted to the domain of software development as necessary. The premise of the field is that software development is an ongoing investment activity---in...
Article
Contemporary software engineering research has failed to completely address the needs of the software engineering industry. Increasingly, software engineers in organizations whose very existence is dependent upon the profitability of their software find themselves poorly equipped to make economic-based decisions. This paper aims to raise the visibi...
Article
The field of software economics seeks to develop technical theories, guidelines, and practices of software development based on sound, established, and emerging models of value and value-creation-adapted to the domain of software development as necessary. The premise of the field is that software development is an ongoing investment activity-in whi...
Article
Prototyping in the development cycle claims to improve analyst understanding of system requirements leading to systems which match those requirements more closely. The quality of the end systems, from a user perspective, is thus improved. In this paper, ...
Article
Developing and selecting high quality software applications are fundamental. It is important that the software applications can be evaluated for every relevant quality characteristic using validated metrics. Software engineers have been putting forward ...
Conference Paper
Full-text available
In building a business case for increased process maturity, a measurable return for each benefit must be established. Increased predictability is known to be one of the benefits of process improvement. However, quantifying financial benefits from improvements in predictability is not as straightforward as quantifying financial benefits of other imp...
Article
Full-text available
Many software organizations have reported the benefits of implementing process improvement activities. However, unlike many other benefits associated with process improvement such as reduced rework and productivity gains, it is difficult to associate objective financial benefits with improved predictability. We propose a technique based on a variat...
Article
Full-text available
The "standard" approach to studies in empirical software engineering research is the "comparative group experiment". We are told the participation of large groups of subjects makes the results more conclusive and meaningful. However, requiring large numbers of subjects results in issues involving the expense, timeliness and applicability of results...
Article
Full-text available
Process feedback is an essential ingredient in process change planning and software project management. In this paper, we discuss on-going work with an industrial partner to integrate feedback from the software development process with a discrete event simulation model to improve process performance predictions. A flexible metrics repository provid...
Article
ABSTRACT In previous work,we developed techniques for modeling software development,processes quantitatively in terms of development cost, product quality, and project schedule using simulation. This,work,has predominately,been applied to the software project management,planning function. The goal of our current work is to develop a “forward lookin...
Article
Software inspections are important for finding defects in software products (Fagan, 1976; Gilb, 1993; Humphrey, 1995; Strauss and Ebenau, 1994). A typical inspection includes two stages: individual preparation followed by a group review with roles ...
Article
Software inspections are important for finding defects in software products (Fagan, 1976; Gilb, 1993; Humphrey, 1995; Strauss and Ebenau, 1994). A typical inspection includes two stages: individual preparation followed by a group review with roles ...
Article
Whilst some software measurement research has been unquestionably successful, other research has struggled to enable expected advances in project and process management. Contributing to this lack of advancement has been the incidence of inappropriate ...
Article
Full-text available
Software firms invest in process improvements in order to benefit from decreased costs and/or increased productivity sometime in the future. Such efforts are seldom cheap, and they typically require making a business case in order to obtain funding. We review some of the main techniques from financial theory for evaluating the risk and returns asso...
Article
Full-text available
INTRODUCTION In a series of papers, Belady and Lehman [Belady & Lehman, 1976] pioneered the study of the evolution of software. They observed that over time, programs exhibit increasing entropy. As a program evolves, its structure degrades and its size increases, resulting in increased complexity. The increase in program entropy as it evolves makes...
Article
Software review is a fundamental component of the software quality assurance process, yet significant controversies surround the most efficient and effective review method. A central question surrounds the use of meetings; traditional review practice ...
Article
This chapter discusses the role of software measurement in the process of making decisions. Software metrics is considered as an information source for decision-making. The chapter focuses on the use of information for solving problems. It presents an overview of the decision process approach to software measurement by adapting work from the genera...
Article
The widespread acceptance of parallel and distributed processing will result in migration of millions of lines of sequential code to parallel environments over the next decade. Unlike movement across sequential environments, significant structure and code changes must be made in order to benefit from the increased processing power of parallel compu...
Article
Full-text available
It is proposed that the complexity of a program is inversely proportional to the average information content of its operators. An empirical probability distribution of the operators occurring in a program is constructed, and the classical entropy calculation is applied. The performance of the resulting metric is assessed in the analysis of two comm...
Conference Paper
Full-text available
The authors discuss a parallel reverse-engineering tool set (pRETS) to support the adaptation of sequential Fortran programs to parallel processors. The tool set is based on a Prolog database representation of the program. The database contains dataflow dependency information for the application program, as well as its complete abstract syntax tree...
Conference Paper
The authors develop a model of software maintenance based upon an objective decision rule which determines whether a given software module can be effectively modified or whether it should instead be rewritten. Completely rewriting a module can be expensive, but it can be even more expensive if the module's structure has been severely degraded over...
Article
A brief overview precedes ten separate tool reviews. Five of the tools address the problems of performance analysis, testing, and debugging in a multiple-CPU environment. The first set of tools-Graspin PPSE, and Integral-supports this activity by providing specification or design languages for concurrent applications. The next pair of tools-Pie and...
Article
One of the most common tasks performed by programmers is attempting to understand the low-level workings of a program. Large programs require some sort of automated support in order to perform this task effectively. The typical approach is to provide tools such as cross references and structure chart generators which statistically analyze a source...
Article
Several methods of allocating testing resources among modules within a large software development project are examined and evaluated. The objective of each of the allocation schemes is to distribute resources across modules so that a uniform percentage of resources is allocated based on the predicted number of errors each module contains (i.e., res...
Article
A metric analysis environment for the COBOL programming language is presented that, through the use of a commercial data base management system (DBMS), accesses a set of files produced by a static analysis tool. The query language of the host DBMS can then be used to easily implement various metric mappings. Such an approach provides an amazingly f...
Article
A software complexity metric is a quantitative measure of the difficulty of comprehending and working with a specific piece of software. The majority of metrics currently in use focus on a program's “microcomplexity.” This refers to how difficult the details of the software are to deal with. This paper proposes a method of measuring the “macrocompl...
Article
It is commonly thought that the choice of programming language has an effect on the amount of effort involved in writing a program to solve a particular problem. However, relatively little work has been done previously in attempting to quantify this specific effect. This study analyzed 279 Department of Defense software projects which used assembly...
Conference Paper
Full-text available
Software tools are an important part of the programming environment. Perhaps one of the most pervasive type of software tools is the “static analyzer”, as exemplified by cross reference listing tools, and call graph generators. In this paper, we describe an “extensible” static analysis tool (CESAT) which is based on the use of a data base managemen...
Article
There is some debate over the effect of using deeply nested control structures upon programmer comprehension. In order to test the effect of deeply nested IF-THEN-ELSE statements, we split 148 computer science students of varing backgrounds into two groups. One group received a listing of a program that made excessive use of deeply nested control s...
Article
Full-text available
A modification of the Berry-Meekings "style metric"—applied to software from the corporate environment—finds little relationship between this style metric and error proneness.
Article
In the past, software systems have often been viewed (at least by Business Schools) as simply tools for management. Thus, the majority of the attention paid to software systems has generally revolved around building systems that can be used more effectively by the user[1]. Other projects funded by the 1984 SIGBDP research program support this state...
Article
The traditional short-cut calculation for McCabe's complexity metric, π+1, does not handle the case of multiple-exit flowgraphs. An alternative short-cut calculation is presented that allows the metric to be applied to multiple-exit programs.
Article
Full-text available
An abstract is not available.
Conference Paper
Full-text available
Introductory programming courses have long been a popular topic of discussion. Often it is either the only computer course a student takes or it is the foundation upon which all further training in computer science is built. The usual goal of such a course is to introduce the student to the use of a computer to solve simple problems in his or her p...
Article
Full-text available
We present in this paper a new methodology for prioritizing threats rated with ordinal scale values while preserving the meaning of ordinal values and respecting the rules that govern ordinal scales. Our approach is quite novel because we present a formal algebraic system called the k/m algebra to derive the equivalence classes into which threats w...

Network

Cited By