Showing posts with label I.T.. Show all posts
Showing posts with label I.T.. Show all posts

Monday, September 12, 2016

If You Want to Be a B.A., You’ve Gotta Love Data

I am frequently surprised when I meet Business Analysts who don’t have much knowledge about databases, why they’re structured in different ways for different purposes, or even how to write a select statement.  I think as analysts, we have to take some of the blame for this happening, but I also think that non-IT businesses who have an IT group often pigeon hole business analysts firmly in business and don’t foster in their BAs a need to understand data, database architecture, or any other data skills.  That’s a shame.

As Business Analysts, we work with the business teams to understand the business, the conceptual objects that are created by our business and the processes that affect them.  We also should understand how the data in the business is used today and have some ideas of how that data could be used to greater advantage in the future.  As we work on a project, we do discovery on what elements of information are needed to complete a business task.  We should understand how those information elements relate to each other and how they are comprised of various attributes.  Working through analysis on a human resources project will almost invariably ask you to create an object to represent a person.  How that person is related to an employer, other employees, benefits packages, payrolls, etc. is the stuff that data design is made for. 

Most IT shops have DBAs who will assist with the creation of tables, relationships, indexes, and all else that goes into creating the data infrastructure that supports a product.  As BAs, we are not likely to be asked to do that work ourselves.  I put it to you, however, that you must know the concepts behind data design and architecture so that you can work together with your DBA in a meaningful way.  You are going to understand the nuances of information interrelations.  You will have a good idea of what elements are most important, which data will be most frequently referenced, so you have valuable insights that will help the DBA do their jobs more effectively.  As a B.A., you can definitely add value in the data design phases of any project.

During discovery and data design, you will use data modelling.  Data modelling refers to the creation of a description of how a database is or will be structured and used.  Some common models are: Flat, hierarchical, relational, and object-relational.  These models allow you to quickly and efficiently convey to others how what objects are important in your business process and how they relate to each other.    Entity-relationship models are a very useful means to communicate those relationships.  You should also be aware that individual items of data have their own properties.  Is it a numeric field?  Is it a text field?  Is the value stored in this field always one of a predetermined set of answers?  If you don’t have a sound background in data modelling, there are many wonderful ways to learn about them, from taking a class in person to participating in a class online.  You can also find many, many websites on the topic as well as books. Please look at the end of this article for some links and suggestions.

Once you’ve conquered the art of working on the design of a database, you need to be able to work with the information.  You need to be able to recover it and manipulate it.  You need to be able to pull out pertinent information from several tables and combine the results.  For this, you need SQL.  As a BA, you need to at least be able to construct a select statement and give it criteria upon which to select and a way to sort the data.  Ultimately, it would be handy for you to know how to create a complex selection between several tables and store the results into a temporary table.  You should also understand how to update, add, and remove records.  These basic skills are relatively easy to do, once you know the ins and outs of data and relationships.  SQL script is relatively natural and easy to work with.  It just takes time and practice.  You also need a data base that you can completely muck up and not cause a problem.  If you can do that, you will be able to help your team test your software, set up specific scenarios for “what if” testing and create reports that will benefit your stakeholders.

Again, there are tons of resources out there that are free or moderately priced.  Go out and find a book about SQL. Don’t get paralyzed in choosing which “flavor” of SQL to use.  Your employer has probably chosen their database technology, go with it.  Or, you can use an open sourced database manager and learn from it.  SQL for Oracle is not drastically different from SQL for Microsoft or an open sourced system.  Making the effort to learn and being rewarded by the warm glow of learning will reinforce your effort.

You may have noticed that I haven’t even started a rant about understanding data flow within and between systems.  That’s a whole other article.  Be prepared.  Until then, happy modeling.

Resources
Coursera is a wonderful source of learning.  Courses are developed and delivered by major universities.  There is little to no charge to learn.  Visit www.coursera.org to learn more. 

EdEx is another free to low cost option for folks looking to learn about many different topics.  Visit www.edex.org and search for topics to get started.

SQLcourse.com offers an interactive SQL learning environment.  It’s pretty nifty in that you can actually interact with a SQL interpreter to do your practical work.  www.sqlcourse.com

Microsoft Virtual Academy has free on-demand courses for beginners to advanced folks.  They’re set up so that you can create lesson plans for yourself and they feed in to MS certification, if you want to go that far.  Here’s a link to the English SQL Server Courses: https://mva.microsoft.com/product-training/sql-server#!index=2&lang=1033

A great choice is the “For Dummies” series.  Do not discount these books for learning.  Amazon.com has almost every version you would want.   You can also get these books on Google Play.


The O’Reilly series of books (the ones with the interesting animals on the front) are consistently well written and very useful for different levels of users.  Amazon and Google Play are good sources.

Wednesday, July 27, 2016

Three Critical Competencies

I was talking to my husband about work the other day and reflecting upon other similar conversations when I had an epiphany.  It was one of those "It's so obvious" moments.  Whenever there are deep and continuous problems with a workplace, a product, or a project, you can boil everything down to a deficit in one or more of these things:
1.    Communication
2.    Trust
3.    Leadership



Failing to have a good communication strategy for any effort is a fast track to tragedy.  In order for any group to effectively work toward any goal, they have to understand what that goal really is.  They need to know why that goal is valuable to their organization or to their customer and how they can individually contribute to attaining that goal.  More importantly, they need to know when a change comes along, what that change is, and why that change is valuable.   Furthermore, the leaders of any effort must be able to effectively communicate to their customers.  Without a clear establishment of expectations for delivery of a project or product, the client can create a fantasy of what they're getting and build upon it as the effort progresses.  Those unrealistic expectations are not likely to be communicated to the work team until the product is presented to the customer.  Then the fruits of your organization's labor are met with a luke-warm reception, if not open hostility due to your having missed the mark, as far as the client is concerned.  A constant flow of information between work teams, leadership, and customers is crucial.  If a group's leaders founder in their communications, they will be met with confusion, frustration, anger, and resentment from both sides.



Trust is a three way relationship.  Not only do team members need to have trust in their leadership, leadership must have trust in their team members.  Open and honest communication about an effort is instrumental in building trust.  The communication must flow freely within a work group, both up and down the leadership ladder.  If team members do not feel like their leaders want to hear honest assessments of the situation, a decision, or an issue, they will shut down communication.  Leaders will then find that they are the last ones to know about problems.  They will not have input from their best advisers on the project, the people who are doing the work.  The work team whose leader does not trust them will not get the full picture of what they're trying to accomplish.  The team may not even be given an understanding of the scope and interrelationships of efforts and so make fallacious assumptions about the work and further undermine both their trust of leadership and leadership's trust in them.  To carry trust even further, the customer must be able to trust that they are getting what they have asked for and what the team has promised to deliver.  Setting realistic expectations and communicating constantly about status and deliverables will keep trust alive between the customer and the supplier.



Leadership is a quality some believe comes from a title.  This could not be further from the truth.  Leadership is seldom given and is almost always developed organically.  Work teams will naturally start to look toward those individuals who express a clear vision of how things are.  They will respect and follow the person who they feel is giving them the opportunity to succeed by providing key information on what is to be done, the goals for doing work, any supporting information, and honest acknowledgement.   They will follow the person(s) making decisions they feel are well considered and take account of different perspectives.  If a work group's managers or other leaders dither rather than decide, the team will feel rudderless since they have no definite goal and no rationale for that goal. Output will suffer and a joint effort will experience thrashing as different factions start working to their own agenda which likely will be divergent.  A more insidious risk lies in the team starting to follow poisonous leaders who can and will crop up in work groups with a power vacuum.  There is always the possibility of a person within a group who will be critical of the project, the organization, and/or leadership and offer themselves as the person speaking the truth about the situation.  

You MAY be able to limp along with communication and leadership alone, but your team(s) will not be as engaged as they could be.  Trust is the glue that binds teams and keeps them working harmoniously together.  Trust breeds frank communication of issues or risks because the team members feel that they can say the hard and unpopular things without fear of retribution.  They feel valued and invested in the work being done.  They have some skin in the game.  That's why I believe that you really must have communication, leadership, and trust in any work effort in order to succeed together.


Wednesday, March 30, 2016

Stress, Relief, and Benefits


Every single person I have worked with, as a BA, battles stress and anxiety.  Really, anyone in I.T. has probably experienced an acute case of either or both once in their work career.  How we handle stress is important.  It's important to us, as individuals.  We need to take care of ourselves so that we don't get sick or burned out in our jobs.  Acute stress and anxiety in a team are counter productive and can destroy a team, if it carries on long enough to become chronic.

I personally believe that we American Adults are not generally well taught how to handle stress and anxiety.  We are told to buck up, shake it off, and/or cope.  No one ever tells us how to do those things.  As a result, we just carry stress around with us as it builds and builds until you either have an explosion or you just burn out and stop caring, stop trying, and freeze up.

I believe that is why there is suddenly a great interest in Yoga, Tai Chi, meditation, and other disciplines which aim to make us more aware of our bodies and our minds.  They also generally focus on relaxation even in the midst of exercise.  This focus on relaxation in the face of doing new and sometimes challenging things is instrumental in helping a person learn to calm themselves and relax when in the presence of stress.

With this in mind, I have made it a goal to practice Yoga and yoga-ish exercise every day.  I have blocked out time in my workday (no more than 15 minutes) in order to unplug and do some yoga.  I also have the intent to do this type of break at home.  Now, it's not possible to be able to do this every day; we get smothered in work or sick, or just have no will.  Here's the important part, THAT'S OK.  What could be more horrible than heaping more stress upon yourself for not doing your de-stressing practices?  The thing that I am striving for is the concept of perfection.  As I am a mortal being, living in the mortal world, I will never reach perfection.  That's fine.  As long as I am always moving toward it and looking to the hope of future improvement, I'm reaching my goal.


Maybe we all should find our de-stressor, un-stressor, anti-stressor; pick your term.  Then, allow for that activity every day. It needs to be something small, that doesn't require a lot of special equipment or preparation.  Something that you can do upon need and at regular intervals.  What is your best way of relaxing in the face of stress?  Only you can find out.

If we can obtain the goal of a less stressed work environment, collaboration and innovation are more possible.  Those positive energy activities cry out for an unstressed environment.  Therefore, I am coming to believe that an unstressed workforce is a collaborative and innovative workforce.  I'm not saying that there should be no challenges.  I am saying that having a high level of stress on a continuous basis works against those two essential business needs and is therefore highly detrimental to any organization experiencing it.

What are your thoughts?

Thursday, March 10, 2016

Finding A Sense of Urgency In A Relaxed Environment

Finding Urgency in a Relaxed Work Environment

I am one lucky duck.  I work for an incredible employer who values each and every one of its employees.  We work in a relaxed environment where the I.T. professionals are treated well and where our business owners know our worth.  Not only that, they are a part of our teams, resulting in a high level of trust between the business and the technical sides.  That in and of itself is a rare occurrence.  Sometimes I think I’ve reached employment nirvana.

Other times, however, I have been beset by a nagging little voice.  That little voice probes and pokes me when I review our backlog or talk to our product owners about future product plans.  I can’t help but wonder “Are we moving as fast as we can or should?”

A little background here.  I come from a series of workplaces where I.T. had little to no control over timelines.  I come from a background where I.T. resources were treated as highly interchangeable assets in a cost center.  We could be replaced with little to no fuss or muss.  The business drove our timelines and I.T. was tasked with fulfilling their requests at the timeline specified or risk being replaced.  As a result, we were driven to work at a fast and furious pace.  As you may expect, we never lacked for a sense of urgency bordering on fear.

Coming to my new employer, I experienced prolonged cultural shock.  The pace at my new employer proceeded much more gracefully and I.T. was able to negotiate with project/product ownership to determine the timelines (unless they were driven by regulatory compliance).  This is when I started hearing that little nagging voice.

The sense of urgency that I was missing was mostly of my own making.  I was so accustomed to having the hammer hanging over my head, I didn’t know how to act without it.  I perceived my own work and those of my co-workers as proceeding at a snail’s pace.  I didn’t like this state of being, nor did I think that I or my team members deserved my own harsh judgement.  I had to find that urgency in the relaxed and respectful environment I found myself inhabiting.

To do so, I started by looking at the business.  I thought about what we deliver to them.  As an I.T. team, we deliver business value.  We may not directly make dollars for the company through selling our software, but we provide value to our company’s position when we give them quality software that meets their immediate business needs.  Therefore, it is extremely important to do the very best job we can to understand not only what they are asking for, but the context underlying the request.  It’s also important to understand what client requests and feedback is driving that request.  Often times, we can start coding early on and perform the requirements gathering as we work.  This can be costly, as requirements discovered later rather than sooner can cost time and money, and maybe even a client’s business.  I found urgency in the need to do the best business process analysis and requirements elicitation as early as possible. 

Next, I looked at the technical discovery and design process.  I wanted to work with my team to create rapid prototypes at a very low cost.  I pushed for use of wire frames and even hand drawn workflows to test out workflows with little to no developer time needed.  If these prototypes failed, it would be a matter of hours at most to revise them and present them anew to the client.  I found an urgency in failing rapidly with cheap prototypes rather than wasting developer time in creating a solution only to have it rejected by the business at a late date in the project. 

Finally, I looked to testing.  How could we as a team perform testing in a more efficient and time-frugal way?  I started looking at my own testing and how I may have been overlapping with the testing provided by our more than capable QA team.  I talked to the QA in my own team and discussed the matter with other Business Analysts.  This introspection and questioning helped me and channel my sense of urgency and help my team and the QA folks find opportunities for improvement.  It was incremental value, but value none the less.


My search ultimately led me to understand that you don’t need looming and unrealistic deadlines to have urgency.  You don’t need the looming specter of a highly competitive employee review process to drive you to new levels of heroics.  Urgency is there all around you to find.  Continuous improvement and reflection on how we work individually and as a team can fulfill that need.  Understanding the business drivers and the wants and needs driving requests adds to that sense of urgency and the need to please the customer, the team, and yourself.