Building the Business Case for the Business Case

Thursday, March 11, 2010 by Aaron Whittenberger
In a BATimes article John Moore visits the need and proper use of a Business Case document to increase the success of IT business solution projects.  He demonstrates a failed project due to a competitor who released a competitive product in the market before our organization’s project completed.  The business manager showing the project failed because it did not deliver the projected ROI.  The IT project team noted that they delivered the project on-schedule, on-time and on-budget.  Was that risk that a competitor could beat us to the marketplace identified at project initiation or during the life of the project?  Were the proper stakeholders identified and included in the project communication plan?

John makes note how the Business Case document should be revisited several times during the project life cycle.  Doing so may have caught the changing environment and allowed the organization to mitigate the risk from the competitor.

John makes very valid points that I believe show an improper IT solution Project Delivery System.  Laura Brandenburg notes in her blog that the Business Case document is often created under another name, or as I have noticed in many organizations the Business Case document is created, then it is used to develop the Project Charter and Project Design documents.  These documents should not only be created but needs to visited by an IT Governance body during multiple steps in the IT solution Project Life Cycle; not just at project initiation.  At each point it makes a “go/no go” decision as to whether to continue the project.  This is where many organizations fail to follow through.

Take the simplified high-level Project Life Cycle that includes 5 phases: Initiation, Analysis, Design, Development and Implementation/Closure.  Most organizations will make the “go/no go” decision on an IT business solution project either prior to the Initiation phase that kicks off the project or at the end of the phase, depending on how the organization defines its Project Delivery System.  In most organizations that is the only time that the IT Governance body will rule on the value of the project.

If the IT business solution project had to go before the IT Governance body at the end of the Analysis, Design and Development phases as well as the Initiation phase then the organization has greatly increased its ability to mitigate risk in the project, especially from external forces.

As the project goes through each phase of the Project Life Cycle, the benefits, costs, requirements and risks are further defined.  In John’s example, if our competitor launched their product while we were still in Design then our IT solution project went before the IT Governance body for its next “go/no go” decision.  The IT Governance Body, being aware of the competitor’s product launch, can now say that the project benefits are no longer valid.  The risk mitigation plan can be executed, which may include dropping the project all together.  This reduces the cost to the organization as those resources can now move on to a more valid IT solution project.

So not only is it important to make sure that you build a Business Case document, by whatever name you may call it, but be sure it is visited several times during the project life cycle, by others outside of the project team, to ensure that the assumptions (benefits, costs, risks) therein contained remain valid.  This along with making sure the proper stakeholders are involved greatly increases ensuring that the IT solution project maintains its value to the organization.

Business Analysis: Building the Bridge

Wednesday, March 3, 2010 by Aaron Whittenberger
A common reference I hear in business today is that the Business Analyst (BA) is the bridge between the business and information technology staffs within the organization.  This infers that the knowledge of getting from one to the other, or interacting with either is contained within the BA alone.  The BA should not be the bridge, but the bridge builder.  If the knowledge is contained only within the BA, if the BA should leave the organization, then the bridge is gone.  If the BA is the bridge builder, then if he/she should leave, the knowledge remains within the Organization.
 
As an IT Strategy Consultant developing IT solutions here in Cincinnati and Southwest Ohio, I go from organization to organization and see that turnover within the BA ranks inevitably causes a great learning curve; either to recover the knowledge that has just walked out the door or bringing the new BA up to speed and making them an effective contributor to the organization. 

What all these organizations lack is an Enterprise Architecture, a fundamental artifact of the Business Analysis profession.  This and other artifacts are the foundation of creating a Business Analysis Center of Excellence.  There is a maturity path that all organizations take from having a community of BAs that serve the organization with no continuity or conformity of service through a mature level in which that continuity and conformity of service is establish; into a BA Center of Excellence, where all BAs within the organization have a common standards of practice, tools and resources from which to draw knowledge.

Where is your Organization on the maturity path to a BA Center of Excellence?

What makes a good BA?

Friday, February 26, 2010 by Aaron Whittenberger
I have spent a lot of time talking about the duties of the Business Analyst (BA); now let’s talk about the characteristics that make up a good BA.  I find it interesting that Kupe wrote on this very subject this week, I guess great minds do think alike.  As Kupe notes, the IIBA call these underlying competencies and define these as “the skills, knowledge and personal characteristics that support the effective performance of business analysis”.

The BA performs an important role in the application development process and is tasked with the duty of ensuring that the IT business solution meets the needs of the business.  The BA develops and maintains the business and functional requirements that the IT business solution must contain in order to be deemed successful.

So we know the role and duties of the BA during a business application development project, so what “skills, knowledge and personal characteristics” does a person need to have to perform these duties.  As the duties of the BA entail eliciting requirements from stakeholders and working with an application development team, you can imagine that communication is at the heart of the competencies of a BA.  Good written and oral communication is necessary in order to be able to perform these duties.  Good communication is not only departing information, but taking in information, or listening.  This is often the skill that is over looked when we talk about skills or create a competency model.

Notice that when discussing competencies, that we not only are talking about “skills”, like Decision Making, Creative Thinking, Learning and Problem Solving; but we are also considering “knowledge” and “personal characteristics”.  As the BA has to work with both the business and information technology staff, they need knowledge of the organization, industry and technology.  What kind of personal characteristics would you want in a person that serves such an important role?  I am sure ethics and trustworthiness would make the top that list.

So if you’re a BA looking to advance your career, there are some competencies to work on.  If you’re an organization or manager looking to hire a BA, look not only at their skills and past performance, but develop some probing questions that will give you a look into their “underlying competencies”.

Where Does the BA Fit into My Small Organization?

Monday, February 22, 2010 by Aaron Whittenberger
In my previous two-part posts I discussed where the BA fits into the organizational structure.  Even Jeff Welsh notes how application software development has changed over the years and requires a team approach for successful implementation of IT business solutions.

But you are sitting there saying we are a small to medium size business (SMB), my entire IT staff is 10 or less, I do not have a Business Process Orgranization (BPO) or Project Management Office (PMO); where should the BA fit into my organization?

SMBs need to utilize the BA role within their project delivery methodology.  If the role is not being fulfilled then there is higher risk of failure of the project in that it does not meet the needs of the business.  I have worked on many small-to-medium IT staffs and can attest to the fact that when resources are few that people wear many hats.  There were projects where I served as the project manager, business analyst, developer and trainer.  On smaller staffs, where only one or two of the people will be doing the duties of the BA, it is even more important to make sure that those people are easily accessible by the business units that they support.  Have them sit in the vicinity of those business units instead of in the IT Department.  I still feel that the BA is an IT function and should report to IT management as opposed to business management, but making the BA readily available and accessible to the business adds value to their role and gains buy-in from the business people to assist the BA with their duties.

So when making the organizational chart keep the BA in the IT Department; but when divvying up office space, make room for the BA near the business unit(s) that they are to support.

Where Does the BA Fit into Your Organization? Part two

Friday, February 19, 2010 by Aaron Whittenberger
In my last post, I joined the discussion of “where does the BA fit into the organization?”  I concentrated on the first line BA that should develop the enterprise architecture and help cultivate the business requirements for business process improvements.   This BA would be part of a combined Business and IT staffed Business Process Organization (BPO).  The purpose of the BPO is to analyze business issues and make the business case as to which IT business solutions projects should be undertaken. 

Once a project is approved by the governance body it is turned over to the Project Management Office (PMO) to guide the project to completion.  The PMO will be staffed with project managers (PMs) and business analysts (BAs) that will guide the project the rest of the way through the project life cycle.  You may be asking why you would need BAs as part of the PMO, or project leadership team; after all the PM is responsible to see the project is completed on-time, on-budget and on-schedule.  Yes, but the BA would be responsible to see that the project is completed and the IT business solution meets the business requirements.  A business application development project will need functional and technical specifications that the BA should help develop.

The third role of the BA, I alluded to in my first post on this subject, is that of the Test or Quality Assurance Analyst.  One role of the BA is to support the system, quality assurance and/or user acceptance testing phase of the project life cycle.

So the answer to the question ‘where does the BA fit …?” is in many positions within the organization.  It depends on which BA role you wish to discuss, and whether the organization is large enough to have a BPO and/or PMO.

Any thoughts on the subject?

Where Does the BA Fit into Your Organization?

Monday, February 15, 2010 by Aaron Whittenberger
I attended the CIO Speaker series sponsored by the Cincinnati Chapter of the IIBA®.  The January meeting showcased the CIO and Deputy CIO of FirstGroup America.  It was not part of their presentation, but a question was asked of them “should the BA report to IT or to the Business?”  This alludes to the bigger question “where does the BA fit into the organization?”

This is the question that many organizations are still trying to answer today.  Many organizations are just realizing the benefits of the BA role.  One thing to realize, is those of us in the BA arena today are in the forefront of an infantile and growing profession.  The International Institute of Business Analysis (IIBA)®, the professions governing body, was formed in 2004; incorporated in 2006.  There are 827 certified professionals (CBAP)® in the world.  Compared to the Project Management Institute (PMI)®, which was incorporated in 1969, offer five certification programs and has nearly 300,000 certified professionals.  You may say that your company has had BAs for the last 5 or 10 years.  Then I say your company is one of the forward-thinking organizations that has recognized the benefits that the BA role provides in developing IT business solutions.

Now I believe this discussion will go on for years; but as this is my blog, here I get to put my two cents in.  First, let’s define the role of the BA in which we discuss.  Many organizations have a quality assurance team, department or processes within the IT application development team.  As these people support system or user acceptance testing procedures, these people are Business Analyst.  For this discussion, I refer to the Business Analyst that works on the front end of the project life cycle.  Who develops the Enterprise Architecture, gathers business requirements for business process improvements and makes the business case for IT business solutions projects to make those improvements.

As the role of the BA is to develop requirements and make the business case for IT application development projects, this is an IT function; therefore the BA is an IT position and should report to the IT management as opposed to the Business management.  Although the duties that the BA performs may put him/her in front of external customers of the company, their goal is not to perform the business of the company but to recommend IT business solution projects to improve business processes within organization; this is an IT function.

If your organization is large enough to use terms such as Business Process Organization (BPO) and Project Management Office (PMO); then you should find the BA at the heart of the BPO.  The purpose of the BPO is to analyze and recommend improvements to business processes.  So now you say that in most organizations the BPO is a business team; I would reply that it should be a combination business and IT team.  The improvement to business processes may require a business solution, such as upgrade or replace business machinery or training; or an IT solution, such as application enhancement, system training or system upgrade.  Therefore, the BPO should be made up of business positions and IT positions working together to determine the best solution to business issues.

One thing that I would change in many organizations is that I believe the BA should sit more in the vicinity of the business unit(s) that they support as opposed to sit in the IT Department.  BAs will be much more effective when they fully understand the business processes in place, issues that business workers face and the daily going-ons within the business unit(s).  Also, easy approachability to the BA for the business gains buy-in to the duties and recommendations of the BA.

So there is my opinion on the subject, what is yours?

Technology at the forefront in Haiti

Friday, January 22, 2010 by Aaron Whittenberger
As you watch the enormous humanitarian relief effort going on in Haiti on the evening news this week, following the devastating 7.0 earthquake that hit that country on January 12th, you can probably imagine the technology and IT infrastructure that the U.S. Department of Defense and other agencies has put into place to assist in that relief effort.   Read more about it here. The Haiti government turned over the operation of the one runway airport at Port-au-Prince, the nation’s capital, to the U.S. military.  An acknowledgement of the U.S. military’s prowess in logistics and technology.  For a few days as the relief effort ramped up news reports of delays at the airport were heard, but as that relief effort got organized those reports of delays ceased even with the amount of aide and volunteers flowing into the country were increasing.

What is not reported on the evening news is how an army of geek volunteers from the private sector is supporting that relief effort.  Leading the way are organizations like CrisisCommons, Ushaahidi, the International Community of Crisis Mappers and InSTEDD, according to an InformationWeek artical.  Application software development gets into the mix, undertaking such tasks as developing ways to help locate U.S. citizens and provide information online about Haiti and how to donate money, developing a timeline of events and a wiki of information online, a GPS-compatible street map of Haiti, an English to Creole dictionary for IPhones and Android mobile devices, and a system to use Twitter messages to ask for or offer assistance to those in need.  "We've been working a lot at Sunlight Labs to get application software developers to organize and work together in volunteer communities.  Developers may not be competent with a saw, but are starting to realize they have a skill they can contribute," says Clay Johnston, director of Sunlight Labs.  "The tools are available, and methodologies like agile project management have been popularized that can facilitate this."

In light of the reports of the failings of the coordination of relief efforts following Hurricane Katrina and the reports of the relief effort in Haiti, it is clear that it is IT solutions that have been put into place to better support humanitarian relief efforts worldwide and that technological advances has clearly moved into the 21st century in support of those efforts.

Is IT Qualified To Satisfy The Business?

Monday, November 9, 2009 by Aaron Whittenberger

“IT executives increasingly implement marketing initiatives to improve the communications with their business customers. But these efforts often focus solely on the brand aspects of the services under the IT’s control without understanding the business’ perception of IT. To maximize the success, IT must add business satisfaction assessments to its tool kit. Understanding business satisfaction requires qualitative and quantitative data that capture customer expectations and perceptions through different types of interactions such as interviews, panels, focus groups, complaint systems, and surveys. This report provides best-practice recommendations, survey templates, and questions to guide IT executives through the deployment of a business satisfaction assessment. It applies Forrester’s deep expertise in external customer satisfaction to the interface between business customers and their internal IT suppliers.” says a new Forrester report.

I have served on countless business application development teams within several organizations in the Southwest Ohio and Cincinnati Information Technology community, one thing I can say is that most IT organizations do not gauge business satisfaction with IT business solutions.  I have served in only a couple of organizations where the business serves on the IT governance committee.  An organization does not have to be “big” to have an IT governance committee.  No matter what the size of the organization decisions are made as to priorities in IT work.  IT governance does not have to be a long drawn out process or take great time commitment from the business or IT executives, but business involvement in IT governance goes a long way in gaining business buy-in as you roll out the IT business solutions to the business.

Involvement in IT governance is just one way that many organizations in the Greater Cincinnati area can improve the IT-business relationship.  The Forrester report goes into ways to solicit and gauge business satisfaction with IT business solutions.  Doing so should affect decisions concerning not only IT business solution delivery but also IT Infrastructure and IT outsourcing initiatives.

 

IT Outsourcing in for some big changes

Tuesday, October 6, 2009 by Aaron Whittenberger
A new report from Gartner Research Firm

IT Outsourcing is not going away anytime soon, but a new report from Gartner Research states that the market is in for some big changes.  The report predicts that one in four business-process outsourcing firms will disappear within the next three years.

The article in InformationWeek gives advice to CIOs who wish to initiate a new IT Outsourcing contract on warning signs to look for in your prospective BPO partner that would indicate this firm may not be able to fulfill any new contract:

1.    Are they losing money?
2.    Are they winning new business?
3.    The loss of marquee clients.
4.    Poor capitalization is impeding growth.
5.    Toxic exposure to tainted financial firms.
6.    Lock down your exit strategies.

In another article in EconomicTimes I read that IBM will goble up half of India’s IT outsourcing business in 2010. 

This is not to suggest that the offshore IT outsourcing business is coming home.  IBM’s business is international.  With IBM awarding one-half to 1 billion dollar contracts, many India firms will not be able to compete in delivering hardware, software, IT consulting services and integrated business solutions.  IBM is one reason that 25% of IT BPO firms will meet their demise within the next three years.

Does Stakeholder sign-off guarantee success?

Friday, September 25, 2009 by Aaron Whittenberger

You have a 50% chance of getting this one right; do you want to ponder a guess? The goal of requirements gathering is to achieve stakeholder sign-off of the business requirements of the project. So let’s say you do everything right, you go through a few phases of requirements elicitation using several different elicitation techniques. You put together a well crafted Requirements Document and get the project primary stakeholders to sign-off on it. All this happens before development begins. You are on the right track. This is going to be successful, right? Your business solution developed by your IT staff is going to fulfill all the project requirements and be a huge success.
 

Dallas Cowboys StadiumKupe explains how the Dallas Cowboys went through all those steps. They went above and beyond the NFL requirement. Received sign-off from the NFL. They built their new stadium with a very impressive jumbo-tron above the field. Sixty feet long, 90 feet above the field. Anybody see a problem here yet. Well evidently neither did the Cowboys nor the NFL; until the third quarter of the first preseason game of the season when the opposing team’s punter hit the jumbo sized screen with his kick. This caused a do-over in the game, and I now understand that they have an extra official at the field whose job is to ensure that any kick does not hit the video screen.


So the IT business solution didn’t work for the stakeholders, namely the Dallas Cowboys and the NFL. So where did they go wrong? Kupe goes on to describe the flaw in the height requirement that made the end result unsuccessful.


This is a prime example of going through all the right steps, get the stakeholders sign-off, and the business solution does not deliver the expected result. So the Business Analyst job in the requirements gathering phase of a project is not only to gather the requirements that the stakeholders are telling you, but go beyond that and capture the requirements that the stakeholders either haven’t thought of, or just don’t know. Kupe’s article gives good point that simulation of punting in the stadium might have drawn out the flaw before the one million ton video screen was installed. Now how much will it cost to move that? Simulation is not one of the requirements gathering techniques that the IIBA® emphasizes, but most certainly can be used as such when the circumstance dictates.


The moral of this story is to be sure to use the correct requirements gathering techniques to draw out all the business requirements so that your end business solution will meet the needs of the stakeholders. That is what will ensure success of your IT business solutions.
 

Cincinnati companies show a commitment to Business Analysis

Thursday, September 17, 2009 by Aaron Whittenberger

I attended the first meeting of the season for the Cincinnati IIBA® Chapter. They are doing a series entitled CIO Speaker Series, where they have the CIO from prominent companies in the Cincinnati area who have demonstrated a solid commitment to promoting the effective practice of Business Analysis in their organizations come and speak on how that commitment is put into practice within their organization.

Now I really thought this was going to be boring but the speaker; Jeff Wolverton, Senior VP and CIO of Great American Financial Resources, Inc. (GAFRI), captured my attention when he spoke about how he used the area of Business Analysis to turn his IT organization around and assist them in providing better IT business solutions.

Jeff has been with GAFRI for 11 years and has held the position of CIO for the past 8 years, but they have really put an emphasis on the area of Business Analysis and have begun to reap the benefits thereof here in the last year and a half.

He demonstrated how putting Business Analysis first changed the reputation of his IT staff within the organization from an IT production support group that is slow in delivering business applications that are often bug ridden, to an IT staff that develops great business application solutions that work for the business. GAFRI IT staff went from delivering solutions and telling the business to report any bugs found and they will fix them to delivering business solutions where they had found 85% of all bugs prior to user acceptance testing.

Jeff also spoke about how in last year’s economy where IT budgets in most organizations were being slashed, he received a double-digit increase; the largest increase in his 8 years as CIO. So how do you get that kind of budget increase and turn around the reputation of your IT staff and the business application solutions that they deliver? GAFRI did it by getting to the business requirements behind the business requests and implementing a systematic, repeatable project delivery process.

Jeff and his team put into place a new IT business solutions delivery process from the requirements gathering phase to project delivery (implementation). This new process was going to take much longer than the old process. What use to take a week will now take two to four weeks.  How do you get business buy-in to wait for their business applications? When you deliver a business application solution in which the business usually reports several bugs during testing to delivering a solution in which the business reports almost no bugs, they see value in the new process.

GAFRI’s new IT business solution delivery process put emphasis on two areas: requirements gathering and application testing. They created new roles within their IT staff and put people in place with very specific duties to gain measurable increased value in these areas. They not only put IT staff through training, but they put the business through training on the new delivery process and the business role on working with the IT staff to drive better IT business solutions.

The first new IT role is the Requirements Analyst. This person works with the business in the beginning of the project to elicit and form clear and concise business requirements for the IT business solution. So many times when IT delivers a project they get the punch line to that Dr. Seuss rhyme about the Super Programmer, where the requester says ‘You gave me just what I asked for but not what I need!’. The Requirements Analyst works throughout the project, in a diminishing role, to ensure that the IT solution will meet the needs of the business.

The second new IT role created is the Test Analyst. Typically, testing is thought of after development is complete or nearing completion. In GAFRI’s model test plans are created before or as development starts and are based on the business requirements of the project. The Test Analyst either performs or supports IT Quality Assurance testing and supports User Acceptance Testing.

GAFRI is a shining example of how commitment to the area of Business Analysis can reap many benefits for the organization, both for IT and the business. The end result is better IT business solutions.

Teaching Old Dogs New Tricks

Wednesday, September 2, 2009 by Mark Murphy
Sometimes the solution to a problem is staring you right in the face.  Sometimes you already know the answer but can't see it because the pieces are labeled in a way that is outside the scope of the solution.  Sometimes you can just use an old tool to provide a piece of functionality you thought you needed to code a home grown solution for.  Recently, such a time occurred for me.

I was in a meeting discussing the logistics of transferring multiple gigs of text data across the internet.  The source computer was an iSeries, the target was something else.  Much of the discussion centered on network latency and the time it was going to take to transfer that much data, and how processes were going to have to be pushed back a day because the window was too short.  Well I said why don't we just zip up the file and send it that way.  Data files tend to be highly compressible, up to 90%.  "Can you do that on an iSeries."  That was the infrastructure guy.  Why not, I can run Java on it.  I shouldn't be too hard to find something, even if I have to write a simple Java program.  "Don't do anything we won't be able to understand."  That was one of the RPG programmers.  IMHO, the legacy tag belongs with those who use the technology, and the technologies  they choose to use rather than with the hardware and operating system.  For me it was a challenge.

A day later I had a working command using a tool that is bundled with every Java Development Kit.  I knew this, but it took a slight memory jog from a college to remind me.  A JAR file is a ZIP file with a different extension.  IBM explicitly provides a tool to convert a database file to a CSV file, or a flat text file, but to compress that file into a ZIP file you need to use the JAR utility and give the file a .ZIP extension.  Works like a champ.  IBM even provides an alternate JAR utility that acts more like a command line compression utility to create zip files, but instead of calling it zip, or izip or something like that they call it ajar.

Well, a short CL later and I have a full featured program that takes a database file name, a zip file name and path (in the integrated file system or IFS), and a format selector (*DLM or *FIXED).  It probably would have made more sense to name that format *CSV instead of *DLM, but IBM's conversion utility calls it *DLM.  The output is a zip file with the name and path as specified in the input parameters.

And Here it is:

             PGM        PARM(&DBF &ZIPFILE &FORMAT)


             DCL        VAR(&DBF) TYPE(*CHAR) LEN(32)
             DCL        VAR(&ZIPFILE) TYPE(*CHAR) LEN(255)
             DCL        VAR(&FORMAT) TYPE(*CHAR) LEN(6)
             DCL        VAR(&FILE) TYPE(*CHAR) LEN(10)
             DCL        VAR(&LIB) TYPE(*CHAR) LEN(10)
             DCL        VAR(&MBR) TYPE(*CHAR) LEN(10)
             DCL        VAR(&CMD) TYPE(*CHAR) LEN(255)
             DCL        VAR(&TEXTFILE) TYPE(*CHAR) LEN(15)
             DCL        VAR(&TEMPFILE) TYPE(*CHAR) LEN(40)
             DCL        VAR(&ERRLOOP) TYPE(*CHAR) LEN(1) VALUE(N)
             DCL        VAR(&INTER) TYPE(*CHAR) LEN(1)

             MONMSG     MSGID(CPF0000 QSH0000) EXEC(GOTO CMDLBL(ERROR))

             RTVJOBA    TYPE(&INTER)

             CHGVAR     VAR(&FILE) VALUE(%SST(&DBF 3 10))
             CHGVAR     VAR(&LIB) VALUE(%SST(&DBF 13 10))
             CHGVAR     VAR(&MBR) VALUE(%SST(&DBF 23 10))

             /* Ensure ZIP directory exists for error logging */
             MKDIR      DIR('/zip')
             MONMSG     MSGID(CPFA0A0)

             /* Delete &zipfile if it exists */
             RMVLNK     OBJLNK(&ZIPFILE)
             MONMSG     MSGID(CPFA0A9)

             /* build text file name */
             IF         COND(&FORMAT *EQ *DLM) THEN(DO)
                CHGVAR     VAR(&TEXTFILE) VALUE(&FILE *TCAT '.csv')
             ENDDO
             ELSE       CMD(DO)
                CHGVAR     VAR(&TEXTFILE) VALUE(&FILE *TCAT '.txt')
             ENDDO

             /* generate temporary file name */
             RTVTMPIFSN NAME(&TEMPFILE)
             IF         COND(&TEMPFILE *EQ ' ') THEN(CHGVAR VAR(&TEMPFILE) +
                          VALUE('/tmp/$$__tempfile'))

             /* export DBF to temporary file */
             CPYTOIMPF  FROMFILE(&LIB/&FILE &MBR) TOSTMF(&TEMPFILE) +
                          MBROPT(*REPLACE) STMFCODPAG(*STDASCII) +
                          RCDDLM(*CRLF) DTAFMT(&FORMAT) RMVBLANK(*TRAILING)
             MONMSG     MSGID(CPF2817) EXEC(DO)
                SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('Error +
                             converting Database File to Interface File') +
                             MSGTYPE(*DIAG)
                GOTO       CMDLBL(ERROR)
             ENDDO

             /* Send 'compressing' status message */
             IF         COND(&INTER *EQ '1') THEN(SNDPGMMSG MSGID(CPF9897) +
                          MSGF(QCPFMSG) MSGDTA('Compressing file ' *CAT +
                          &FILE) TOPGMQ(*EXT) MSGTYPE(*STATUS))

             /*---------------------------------------------------------------*/
             /* This command is using the unix environment to zip up the file */
             /* extracted above.  All errors are logged to a text file        */
             /* named error.txt.  The 2>> operator redirects stderr to the    */
             /* file following it, and adds any messages to the end of the    */
             /* file.                                                         */
             /*                                                               */
             /* The following unix utilities are used here:                   */
             /*  ajar - create an archive                                     */
             /*                                                               */
             /* The following environment variables are used here:            */
             /*  QIBM_QSH_CMD_ESCAPE_MSG - Sends QSH0005 as an escape message */
             /*        if the exit status is not 0 (Qshell error condition)   */
             /*---------------------------------------------------------------*/
             /* Send an escape message if the command fails */
             ADDENVVAR  ENVVAR(QIBM_QSH_CMD_ESCAPE_MSG) VALUE(Y) +
                          REPLACE(*YES)

             /* Create &zipfile from temporary file */
             CHGVAR     VAR(&CMD) VALUE('ajar -c -M' *BCAT &ZIPFILE *BCAT +
                          '''' *CAT &TEMPFILE *TCAT ''' :' *BCAT &TEXTFILE +
                          *BCAT '2>>' *BCAT '/zip/error.txt')
             QSH        CMD(&CMD)
             MONMSG     MSGID(QSH0005) EXEC(DO)
                SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('Error +
                             creating ZIP file') MSGTYPE(*DIAG)
                GOTO       CMDLBL(ERROR)
             ENDDO

             /* Delete temporaty file */
             RMVLNK     OBJLNK(&TEMPFILE)
             MONMSG     MSGID(CPFA0A9)

             /* Exit Normally */
             GOTO       CMDLBL(OUT)


             /* Process Errors */
 ERROR:      IF         COND(&ERRLOOP *EQ Y) THEN(GOTO CMDLBL(OUT))
             CHGVAR     VAR(&ERRLOOP) VALUE(Y)

             /* Delete temporaty file */
             RMVLNK     OBJLNK(&TEMPFILE)
             MONMSG     MSGID(CPFA0A9)

             /* Send Escape message */
             SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('Error +
                          Processing File') MSGTYPE(*ESCAPE)

 OUT:        ENDPGM

Check it out.  Create a ZIP file using the Java Archive utility.  A Rose by any other name would smell as sweet!

Are IT Jobs on the Rebound?

Sunday, August 30, 2009 by Aaron Whittenberger
A Network World article reports that the U.S. gained 7,400 IT jobs in August.  Gaining back what was lost the month before and following five months of losses of IT jobs in the U.S.  Hopefully this is the first signs of the U.S. coming out of the recession that has gripped the country.

Adding to the good news for IT Services Companies in Cincinnati, across Ohio and the country; as well as application development personnel is news from the U.S. Citizenship and Immigration Services that demand for H-1B Visas are on the decline.  They expect the entire 85,000 visas to be given out this year, just not as quickly and with the same frenzy as in the past few years.  FierceCIO continues to state that ‘employers are putting a greater emphasis on hiring American workers, buying American goods and abandoning offshore outsourcing’.  Where I do not believe this to be the general direction of employers in America, some smaller employers may have taken this direction but large firms continue their offshore IT outsourcing plans.

So does all this mean that better times are in store for IT business solutions professionals in America?  I remain pessimistically optimistic.

The Old and the New

Monday, August 17, 2009 by Jeff Welsh


Having been in business for over 18 years now in Cincinnati, we have seen a few changes in the IT Solutions space.  It’s interesting to see what were once considered cutting edge technologies slowly fade in to oblivion.  It’s also very gratifying to be able to change and adapt to the newest IT Solutions. 

The past couple of weeks we have gotten calls from both ends of the spectrum.  From the older side, we had inquires from two different companies running older IBM System/36 software.  I had thought most of that RPG 2 and OCL had pretty much been converted over to something else during the Y2K scare at the turn of the century.  I guess not.

On the other side of the spectrum, we have gotten calls from a couple of companies looking for some help with Magento ecommerce.  Magento happens to be one of the open source ecommerce packages we have experience with. 

This is not the first post that I have written about open source, check this one out.  If you are thinking about a sweet CRM package, check out this post.

One other thing, you might be wondering about is why the picture of the 1974 Dodge Charger?   I was looking for a picture that could represent something old that is also new and cool.  I may be biased, but I think that picture does it.   That is “The Beauty” at the Quaker State and Lube cruise in on Sunday night.  I typically go to the Colerain location.  Next time I go, I will bring “The Beast”.

 

Is the IIBA Buckling Down Too Hard?

Tuesday, August 4, 2009 by Aaron Whittenberger
I have return.....from my eight month siesta.  No, I have not been in Mexico; so I can guarantee that I do not have the swine flu.  Although Mexico is on my bucket list, I don't believe now is a great time to visit.  I am back and still on my soap box.  What has gotten me back on my soap box are some recent articles and blogs I have read complaining that the International Institute for Business Analysis ® has made the application and recertification process for their Certified Business Analyst Professional (CBAP)® certification too stringent.

I have been and continue to be a strong proponent for IT certifications.  Even since I obtained my CBAP® certification last year the application process has changed.  The exam itself is now based on version 2.0 of the Business Analysis Body of Knowledge (BABOK)®.

I have heard that CBAP® applicants are rejected due to the IIBA® reducing their documented hours for tasks or deliverables that do not qualify as business analysis work.  Such reduction of hours left them short of the 7,500 hour requirement.  Some applicants are unaware of the new 900 hour requirement in four of the six knowledge hours, again leaving them short of the requirement. 

First of all I believe that the application process itself is more rigorous than the exam.  It is part of the whole process of obtaining the certification.  The IIBA® , by putting all applicants through a rigorous review process, protects the value of the certification.  A couple of tips I can give you in applying for the CBAP® certification:
  1. Document more than the minimum 7,500 hours of business analysis work.  This ensures that if your hours are reduced in the review process that you will still have enough hours to qualify to sit for the exam.  This goes for total hours as well as hours in each of the knowledge areas.  I personally documented 9,000 hours on my application.
  2. Put the language on your application in the wording of the BABOK®.  By putting your work tasks and deliverables in the language of the profession it is less likely that the hours will be discounted in review.
     
Remember that any certification worth getting will not be a give-me.  You will have to work for it.  Any certification worth getting will have a re-certification process, usually just as rigorous as the original application process itself.  In my opinion, the CBAP ® certification and the business analysis profession is what turns IT solutions into IT business solutions.  When it comes to web application development or any business application development projects, the business analyst is as much a valued resource as the project manager.  Business analysis done right can help ensure the success of your IT business solutions projects.

Quantum Leap, Part 3

Tuesday, July 14, 2009 by Jeff Welsh

In part one, I introduced the concept of “quantum superposition” and in part two I talked about qubits.  One of the things an IT strategy consultant should do, is make things that can be really quite complex and turn them into something practical.  Today I’m continuing the topic of Quantum computing.

Quantum computing also offers the means of making our communications and business transactions far more secure than they are today. Quantum cryptography exploits several remarkable effects of “quantum entanglement.” One of these is the ability to generate pairs of utterly unique and unbreakable keys. Basically, two random but identical particle keys can be created using entanglement. Since reading a quantum particle alters it, any effort to eavesdrop on communication is detected and that communication is either disrupted or ended.

Using this technology, we can create completely secure communications networks. Recently, Toshiba’s R&D labs announced the successful testing of quantum cryptography over fiber-optic networks.

IT Solutions based upon Quantum computing will not only change Cincinnati and Dayton, but the entire world.  How is this going to happen?  I wish I knew exactly how it is going to play out.  I’m still waiting on my flying car!

 

Swweeet!

Wednesday, July 1, 2009 by Jeff Welsh

Web application development is a must for Cincinnati and Dayton companies.  We at STAR BASE, Inc. have written much lately about open source IT solutions.  Since we have been on a roll with that, why stop now? 

Another open source IT solution we have worked with is Sugar CRM.  Sugar CRM falls in to a relatively new software category that I’m going to call Commercial Open Source or COS for short.  (Remember you saw the TLA (three letter acronym) COS here first!)  COS applications have a free version that you can download and implement and they also have a commercial version that can be licensed and supported like any other software application.

What we have found to be very effective; is to use the open source version and customize and tailor it to meet specific business needs.   No need to re-invent the wheel.  Swweeet!

 

Browser Wars Redux

Tuesday, June 23, 2009 by Jeff Welsh

Just when I thought the browser wars were pretty much a thing of the past, they are heating up again.  Web application development is difficult enough without having to worry about what version of what browser a client may be using.  

We just upgraded a couple of machines to IE 8 and guess what?  IE 8 is not compatable with our web based CRM!  IE 7 and FireFox 3 work fine, but in IE 8 the search fields are not input capable.  IE 8 provides for a “compatablity mode”, but hey that doesn’t work either.  I was wondering if Google Chrome would work, but in Chrome, the search fields don’t show up at all; the field labels are repeated. 

I was thinking about trying Opera, but stopped because how many web browsers do I really need on my machine any way?

In order for web applications to continue to flourish and expand, there has got to be adherence to standards by both application developers and software companies.  There are so many other applications that could be developed and expanded.  But what do we do with IT solutions?  Both vendors and developers shoot themselves in the foot by delivering applications and software that “stops working”. 

What's the business impact?
- Increased support costs.
- Increased applications development and testing time
- Less confidence by the user community of “IT not  being able to do anything right”.
- Less time and money to develop new applications.

As a reformed, application developer, maybe I should retitle this post “The Return of the Angry White Guy.”  I think instead, I’m going outside and shouting, “I’m mad as hell and I’m not going to take it anymore”. 


 

Come On In, We’re Open

Monday, June 22, 2009 by Matt Warman

The Cincinnati market is known for being conservative when it comes to using software. Most application development people I know would say that big software, from the big firms, either three lettered companies, or their name ending in “soft”, are the only code found in shops. There is the occasional open source item here and there, but usually in smaller shops. Why is that? Well, some firms don’t create their custom application development, they just enhance out of the box software. They need a vendor to yell at and fix things when it breaks, because their staff can’t fix the code, or don’t have access to it. For many firms, it is better to pay a vendor for support than to maintain it themselves. As long as you can point to somebody, it’s ok. Some firms actively fear that open source means that everyone will have their intellectual property somehow. They fail to realize that it is the same proprietary code that everyone uses too. Since, you have the source code, you can see if there is a backdoor coded in the application, something you can’t do with proprietary code.

With these fears aside, many firms, even in Cincinnati, are looking to use open source solutions for their issues. Certainly many are using the free (as in beer) code to save costs. I hope though that some firms will see how this free (as in liberty) also helps their business. It’s a tough call whether to purchase a pre-made business process package (I am looking at you SAP), or to roll your own. I think the best of both worlds would be to use an open source application, and to enhance it. It is a popular misconception that you MUST contribute code, or that you can’t change the code. You can create your own code for use; you can’t sell the application with YOUR enhancements as YOUR NEW application. There is some legal wrangling, yes, but the bottom line is that you have application development teams, so use them. Your best business plan is to use your process as a competitive advantage, not to shoehorn your process into software that all of your competitors use. I think the goal is to beat them, not join them.
The best thing to do is to give your application development team a couple of old boxes to play with, and let them do some research on applications that can save your money, and are flexible enough to work with your processes. You may end up with an inexpensive system, and get that application that outperforms your competitors.

Creating an Object-Role Model - Part 2 - Internal Constraints

Monday, June 8, 2009 by Mark Murphy
Last time I discussed the basics of an Object-Role Model.  The model we created, however, was simplistic, and didn't give us a way to say that a Person must have exactly one name, or that a person might have more than one phone number.  These things are handled by constraints placed on the roles.  The application development team has a fairly extensive set of constraints at it's disposal when creating an ORM.  I will talk about the most common of these this time.

Internal Constraints are those that apply completely to roles within a single fact type.  Let's go back to the Person model we developed last time (slightly modified).

Person has Name
Person has Phone Number
Person has Address
Person has E-mail Address

We can attach an internal mandatory constraint to the Person role in the Person has Name fact.  This is somewhat counter-intuitive, but constraints apply to the other role in the fact.  I attach the mandatory constraint to the Person role in the Person has Name fact.  That means that each person must have some name.  If I attached the mandatory constraint to the name role, it would mean that for each name, some person must have that name.  Another way to say it is that a constraint goes on the controlling or primary role.

This is what this constraint will look line on the diagram:



We can also attach uniqueness constraints to roles.  As with the mandatory constraint, the uniqueness constraint applies to the other role.  So to say that a Person may have at most one Name, we will attach a uniqueness constraint to the Person role of the Person has name fact.

The uniqueness constraint will look like this on the diagram:



When combined, these two constraints mean that a person has exactly one name:



What about that phone number?  I have multiple phone numbers, my home phone, my cell phone, and a couple of work phones.  In addition, my home phone and my work phone numbers could be claimed by other people as well, and some people may not even have a phone number, or it is unlisted and we don't know it.  In this case, the Person has Phone Number fact type has no mandatory constraints, and it takes both the person and the phone number to make a unique fact.  As an aside here, up until now, I have been using fact type and fact rather interchangeably, but that is not strictly correct.  The fact type is an abstraction of the real facts, thus Person has Phone Number is a fact type, and Mark has Phone Number 123-4567 is a fact.  The point here is it takes both the person Mark and the Phone Number 123-4567 to make a unique fact, so to add the uniqueness constraint we would add it against both roles simultaneously. 

This, for the application development team, is a many-to-many relationship, and looks like this on the diagram:



I will show one final combination today.  For the sake of example, suppose that I could only have a single e-mail address, and every e-mail address could only be used by a single person, not reality I know, but what you would have is a one-to-one relationship.  In that case you could say it like this: Each person has at most one e-mail address, and each e-mail address is used by at most one person.  There are two internal uniqueness constraints here one for the person role, and one for the e-mail address role of the Person has E-mail Address fact type.

These constraints would look like this on the diagram:



As you can see, with just binary fact types and a couple internal constraint types (mandatory and uniqueness), the application development team can model nearly everything that can be modeled on an ER diagram.  And you have natural language descriptions of the model that are readable by the business users the solution is being developed for.  But wait there's more.  I will tell you about external constraints, and reference modes next time.