Monday, September 28, 2009

I was working on a couple of things earlier today and realized that some of my Windows 7 features weren't working any more. Specifically, I couldn't get the taskbar thumbnail peek feature to work.

After about 30 minutes of fruitless googling, I switched my theme, thinking maybe it just needed to be reminded of its inherent Aero-ness. This seemed to work.

A little more googling turned up a possible reason for the loss of my Aero desktop - Remote Desktop. Apparently it can muck up the Aero settings real good.

Friday, September 25, 2009

Well, after Tuesday Updates this week, my Vista computer was left with many many problems. Between the windows printer dialog being totally MIA, and Office crashing randomly and repeatedly, I made the decision to reformat.

However, being the enterprising young geek that I am, I'm not satisfied with simply reinstalling Vista Ultimate. I'm going for broke. Windows 7, here I come.

Friday, September 11, 2009

Zhang et al (2009) insist that "incorporating a human computer interaction (HCI) perspective into the systems development life cycle (SDLC) is critical to information systems (IS) success and in turn to the success of businesses." The problem, they remind us, is that typical software development progresses with the needs of the organization in mind, rather than the needs of the individual using the software. In their article "Integrating Human-Computer Interaction Development into SDLC: A Methodology", Zhang et al provide a new methodology for developing holistic systems which include human factors requirements.


Strategies

Zhang et al provides 5 strategies for utilizing Human-Centered SDLC



  • Focus on human AND organizational needs early in the process

  • Develop the HCI in conjunction with other activities, not as an
    afterthought

  • Evaluations throughout the process

  • Use an iterative process

  • Consider the user experience, not just usefulness


On the topic of usefulness, an early critic of Twitter once supposedly said "Twitter is interesting, but not useful" (paraphrased). A quick witted fan replied "Neither is Ice Cream". User experience can enhance a product to the point that even a seemingly useless application can live long enough to find its niche.


HCI Principles

In addition to the strategies above, the authors also give 6 principles to follow in HCI design



  • Improve Performance while reducing effort

  • Prevent Errors

  • Strive for a fit between tasks, information needed, and information
    presented

  • Enable an enjoyable user experience, not merely a useful one

  • Promote Trust

  • Keep the design simple


Conclusion

Given the strategies and principles listed, I would think that most modern Agile techniques would suit themselves well to developing HCI elements of software in conjunction with other elements. Even the basic OO requirement gathering process is a matter of observing real-world activities and converting them into software objects. Considering the elements from a usability and interaction perspective could improve that process.


References

Zhang, P., Te'eni, D., Carey, J. & Tremaine, M. "Integrating Human-Computer
Interaction Development into SDLC: A Methodology". Retrieved September 11, 2009, from http://melody.syr.edu/hci/amcis04/AMCIS_04_Zhang_etal_HCI_in_SDLC.pdf

Thursday, September 10, 2009

Thanks to @Subdigital for this awesome suggestion: http://downforeveryoneorjustme.com/

Tuesday, July 21, 2009

IT poses an interesting challenge during reorganizations. Between security policies, differing hardware, and existing software, integration of two business units requires time and effort across both companies.

In a TechRepublic article (2001), Loraine Lawson offers the following suggestions for IT restructuring:

  • How many people are in IT
  • How many users are they supporting
  • What are common user requests
  • What skills are in use in your location

I would further amend these questions by applying them not only to the new, united company, but to the individual companies as well. They would end up looking something like this:

  • How many people are being combined into one IT department?
  • How many users are being supported, and how many will be supported in six months, and again in a year
  • What are the common requests today? What will they be in six months? One year?
  • What skills are currently in use? Will they still be necessary in six months? One year?

By answering these questions, the new IT manager or CIO can evaluate current staffing needs, and prepare for the needs of the united company in the future.

References

Lawson, L. (2001). Members offer advice on restructuring IT department. Retrieved on July 21, 2009 from http://articles.techrepublic.com.com/5100-10878_11-5033618.html

Thursday, July 16, 2009

Introduction

In their article "Best Face Forward" (2004), Rayport and Jaworski discuss ways in which companies can integrate humans and computers into a unified interface which interacts with customers. The thesis they begin with is that without specific attention, most companies develop disparate interfaces between departments, or even projects within a department. The goal of "reengineering" the customer-facing business operations is to achieve a unified system which provides customers with better service, and the company with better efficiency and revenue.

The field of Human-Computer Interaction has been growing over the past decades, as computers are becoming more powerful. Analysts are finding surprising results regarding customers preferences of machines over people, even in matters such as shopping assistance and customer service. Airline Customers have found that automated ticket kiosks have sped the process of check-ins, while many grocery customers appreciate the speed of the "U-Pay" style check-out lines.

The first step a business must take is to determine the type of customer interaction their customer expects. In cases where a service provided depends on creative handling of judgement or pattern recognition, humans have an edge over machines. However, if the service depends on achieving consistent results when dealing with repetitive tasks, a machine would have the edge over human.

With the development of the new field of HCI, however, care must be given to how humans perceive the interface. For instance, in Grocery Store Self-Checkout lanes, customers are pleased when it is fast and easy. However, according to Walters (2009), there are cases where confusing dialogs and buggy programming can cause more harm than good.

IT needs to work with the end users and potential customers to ensure that Machine-Based interfaces not only work uniformly together, but that they also work seamlessly with the human side of the business. In addition, the software developers should pay close attention to feedback received during development, in order to develop a system that is intuitively understood by potential customers and users.

References

Rayport, J. & Jaworski, B. (December 2004). Best Face Forward. Harvard Business Review, 82(12), 47-58. Retrieved July 16, 2009, Business Source Complete database.

Walters, C. (2009). Consumerist - Dear Kroger, Please Make Self Check-Out Suck Less. Retrieved July 16, 2009, from http://consumerist.com/5308408/dear-kroger-please-make-self-check+out-suck-less

Wednesday, July 15, 2009

As a software engineer, project proposals are available in spades. Learning how to evaluate business needs and technical needs is a basic job prerequisite (Parkinson, 2000). Parkinson explains that there is a significant difference between a technical requirement and a business requirement. An example of a technical requirement would be needing a new printer. A similar business process requirement would be needing a more efficient printing algorithm that cuts down the time spent spooling a project to the printers.



Business drivers can be broken down into “chunks”. For instance, an “Expense Reduction” driver may be broken into Customer Service expenses, customer acquisition\retention, efficiency, and other expenses (Machavarapu, 2006). Once the drivers are broken down, Machavarapu recommends assigning weights to the “chunks”, such that new projects can be evaluated for priority.



Finally, there is an array of reasons for beginning an IT project which should serve as red flags for engineers and developers. Reasons such as “Wanting to stay abreast of the latest technology advances” frequently translate into “Spend money on shiny new buttons”. Unfortunately, if this desire to advance technology isn’t tempered by legitimate business needs, the project may fail, or worse, prevent legitimate projects from receiving adequate funding.


References

Bernard, A. (December 26, 2003). Why Implementations Fail: The Human Factor.

Boehm, B. W. Quantitative Evaluation of Software Quality. In R. W. Selby, Ed. Software Engineering (p. 27). IEEE. Retrieved July 11, 2009, from
http://books.google.com/books?hl=en&lr =lang_en&id=ttaMIFv8bv8C&oi=fnd&pg=PA5&
dq=characteristics+of+quality+software& ots=yWkqT2mRFl&sig=Mj9mpFfLpWk4BkLvp4cz
M8ZhGU4
Google Books.

Machavarapu, S. (2006). Prioritizing IT Projects Based on Business Strategy - CIO.com. Retrieved July 15, 2009, from http://www.cio.com/article/22976/Prioritizing_IT_Projects_Based_on_Business_S trategy/1

Parkinson, D. (2000). Recognizing business needs can lead to new and repeat clients. Retrieved
July 15, 2009, from http://articles.techrepublic.com.com/5 100-10878_11-5027153.html

Pfleeger, S. L. & Atlee, J. M. (2006). Why Software Engineering. Software Engineering Theory and Practice (3rd ed. pp. 9-11). Upper Saddle River, NJ: Pearson Prentice Hall.