My fantasy NFL team continues to go from strength to strength. However this is due to the calibre of the players I was drafted rather than my skill as a manager. One of the tasks I need to do as a manager though is consider the weekly match ups, and the point scoring system of the fantasy NFL to maximise the number of points I can get from my team in any given week. Eliciting this information and understanding the match up process is difficult to represent using a standard analysis technique.
Let me expand. In real life NFL games, points are gained for a touchdown resulting from a passing plays or rushing plays. In passing plays the Quarter Back (QB) to the Wide Receiver (WR) or Tight End (TE). In rushing plays the QB hands off to the Running Back (RB)
In the Fantasy game it is slightly different. Points are gained for the number of yards, irrespective of whether a touch down is achieved, from passing plays or rushing plays, with additional points awarded for a touchdown. For example a QB may get 1 point for every 10 yards achieved by the play, and the WR or TE get 0.5 points for every 10 yards achieved by the play, or a RB. May get 1 point for every 6 yards rushed in the play. Additional point can be obtained via interceptions. Fumbles and loss of yardage can result in a negative score.
This is all important when considering the weekly match up in the Fantasy league.
Remembering my Fantasy team is made up from a selection of real life players who belong to a number of real life teams, each week I need consider which real life teams they are up against and select the players who have favourable match ups. This way I am likely to get my fantasy team the most points, putting my other fantasy players on the bench, or trading for others via waiver process.
In its simplest form, match ups can be assessed as follows. For the Fantasy QB, WR & TE: find the average number of passing yards gained per game and their overall rank in the NFL. For each of their real life NFL defence for that week: find average passing yards given up per game and rank. The best way to describe this type of information is by specifying a few examples.
So considering my match ups for this week’s match up:
N.B. Rushing yards given up is to all rushers, Passing yards given up is to all receivers in team
This is something I need to do a weekly basis. There seems no best way to model this from an analysis perspective apart from following examples. In reality there is more to assessing match ups than this and the stats to do so are readily available on a number of NFL site.
The information I have elicited here really requires me to revisit my use case model and data model. However – I will leave that to next year’s season!
Week 7 of the NFL Fantasy Football League, still heading the League!
My team is good but I have had to make a couple of changes here and there. This has meant getting to grips with the Waiver Wire Process which is the process for dropping and requesting players from the fantasy team. At first glance this look straightforward. This is highlighted by the process flow below.
I can look at the pool of free agents – i.e. those players who are in an unassigned state, and select one if they suit my purposes. I must indicate which player I am willing to drop if this transfer goes ahead.
Here’s where it all starts to get complicated. All waiver requests are received in a certain time period. Once the time trigger passes the requests from all teams in the league are evaluated, as other teams may have asked for the same player as me. Waiver requests have a priority assigned to them, the team at the bottom of the league at that point in time has the highest priority. If they request 1 player then they are guaranteed to get him.
The waiver priority is covered by a set of rules which go like this. Team E is bottom of the league so has priority 1 for the waiver wire. That request will process then the priority becomes 5 for the second request, and 4 for the third request, and so on, as illustrated below in the decision table, until all waiver wire requests are processed.
Round 1 priority
Round 2 priority
Round 3 priority
Round 4 priority
Round 5 priority
If the requested player has already gone, then the Team’s next request is processed. If not player has been requested then the priority moves to the next team.
After each week’s matches the waiver wire process is reset. This brings balance to the teams by giving the worst team first choice of unassigned players on the waiver wire.
There are tactics to employ here. I could opt to drop the same player for more than 1 transaction. I could request player A from the free agents and opt to drop player Z. However due to my position in league and subsequent priority, player A may be gone, so then I could also request player B and opt to drop player Z. If I get player A, then my second request is ignored. If I don’t then I can still barter player Z for an alternative.
What happens to player Z? Well he goes into NFL Fantasy Football limbo for a specific time period, before joining the pool of free agents as an unassigned player. This provides a check to stop teams colluding on exchange of players. Important if you are playing for money rather than fun!
Next week….the match up process or how to select which players to play in any given week!
We are now in Week 6 of the NFL Fantasy Football League, and I am leading the League at this point in time. Not bad for a newbie. Analysis obviously pays off!
Following on from my last blog, this week I am concentrating on the players. As can be seen from the class diagram, each member of my Fantasy team is a player for a real life NFL team. A player can belong to zero or 1 Fantasy teams, and Zero or 1 NFL teams. Each NFL team can have up to 53 players, of which around 45 are active, the rest are in reserve. For my Fantasy team I have up to 15 players of which 9 are active and 5 are on the bench. This is treating the team Defence as a single unit (a player) in the interests of simplicity!
I need to be able to manage my team on a weekly basis, swapping players on and off the bench depending on injuries and match ups, or dropping them from the team altogether. In addition I want to be able to see how I am doing in terms of wins, losses and draws; get current status of my players and view their track record. I also need to know if any of my players play for an NFL team on a Bye week, so that I can activate my backup in sufficient time. These can be shown on a Use Case Diagram.
This means that the players in the Fantasy League can be in one of number of states as shown on the State Chart. This is fairly straightforward. Once I have a player assigned to me I can use him on the active team, or put him on the bench. If needed I can move the benched payer into the active team and demote an active player if the match up for that week seems better. I can drop either a benched player or an active one for a number of reasons such as injury or poor performance, or maybe a unassigned player, dropped by another team looks a better fit. I will need to request an unassigned player via the waiver wire process to do this.
Understanding the Waiver Wire Process and match ups are key to understanding how players move between some of these states. These will be covered in my next blogs!
I am playing Fantasy Football of the American variety (NFL fantasy football). I have been co-opted into this purely to make up numbers for a league. My knowledge of American football extends to the difference between a wide receiver and a tight end, and the name of the Quarterback of the Pittsburgh Steelers – who I support.
However, surprising as it may seem, I am finding that this foray into the world fantasy leagues has required application of all my analysis skills. In the first instance I am having to get to grips with a completely new domain, understanding the game itself, which is different from the real-life game. At the moment the emphasis is about securing the right resources for the team, knowing what players I need in which positions, and the processes and rules about changing them.
We are now in week 2 of the actual season, the league opened a couple of weeks earlier so that members of the league could do their initial research. The first event is the draft. The purpose of the draft is to build your team. As a members of the league I am given a ranking in the draft,. For round 1 this is on a randomized basis. This is the order in which I get to pick player a player. All active players are listed by position. After round 1 the ranking switches, with the member who picked first picking last in the second round, and switching again for each subsequent round, so they pick first again in round 3.
The resource profile needed is as follows:
• 1 quarterback (QB)
• 2 running backs (RB)
• 2 wide receivers (WR)
• 1 tight end (TE)
• 1 Kicker (K)
• 1 flex player either a WR or RB
• Team Defence
• 6 people on the Bench
There are two ways of getting players at the start of the season; automated draft and live draft, each with a complex set of business rules controlling order of selection.
As a latecomer to the party, having done no background research, I took the automated draft route. This meant I got the best player for the position available to me that that point in time assigned to me automatically, based on my ranking in the draft. Luck of the draw, and it wasn’t too bad actually.
The live draft is a whole other ball game. Members of the league all go online at the same time, and each gets 60 seconds to select a player, again based on their position in the draft. This is very reactive. The member needs to have done lots of research around individual player performance, and their real-life team performance. You cannot guarantee you will get your choice combination of team members so alternative strategies and the players needed to support them need to be made in a flash.
For each week’s fixtures I can select my team from the players assigned to me, swapping players on and off the bench at the start of the game.
However the resourcing process is ongoing throughout the season. Following the draft players are either assigned or “free agents”. I can request a free agent and agree to drop a player from the same position from my team. However there are business rules controlling this as well. I do not know what players other members have requested and my request is only actioned in line with my position in the draft, which keeps changing. I have managed this once so far.
I can also trade, whereby I offer a swap a player with one from the team of another member. Yet more rules cover this as the rest of the members in the league can vote on this trade, a practice designed to prevent collusion, particularly in those leagues playing for cash.
So, having elicited some of the basic elements of the game in terms of team make up, status of players and business rules governing team selection,
I feel some UML models looming for next time. Follow this blog for a new view of American Fantasy Football, and an update on how my team is doing!
On Saturday 13th June the BCS, the Chartered Institute for IT, and BCSWomen, ran an attempt to set a Guinness World Record (GWR) for the greatest number of people taking part in an appathon. To beat the record over 1000 people were needed to learn to code an Android app at the same time, at different locations across the UK.
I took part as an official time keeper for the Edinburgh attempt held at the Design Informatics Centre, at the Edinburgh College of Art. My role was to blow the whistle at 10.30am announcing the start of the attempt, and again at 11.30am to close it. I wish I had been creating apps however as it looked good fun.
All ages attended the event across the UK, with the eldest participants in their nineties, and for many this was the first chance they had had to play with technology. The GWR attempt took place over the first hour of the day with a 30 minutes briefing from the trainer, with some downloads and set up work, followed by 30 minutes coding. This involved using the AppInventor on a laptop to create a simple app, in this case using a picture of a cat that meowed when tapped. This was then downloaded to an android phone to complete the process. When the whistle blew the attempt finished with a synchronised meow from the coders.
The android workshop continued until 3pm, extending and enhancing apps, and creating more imaginative apps as the day went on.
This GWR attempt was part of the on-going effort by BCSWomen to reach more people and youngsters to encourage them into a career in IT, to show that computing can be fun and to raise the profile of computer science nationally. All location trainers for the day were female. The event placed technical women in front of lots of people in order to change the perception that ‘women can’t do technology’.
Did we break the World Record? This will take some time to verify but, as we had 1093 coders, the chances are looking good……
I have recently come back from a holiday sailing with some friends who live aboard a small yacht. They are currently located in the Ionian sea, sailing mainly around the islands of Corfu, Paxos and the Greek Mainland. It was still quite early in the season with many tavernas and bars just opening up, and seasonal workers arriving at the small ports and marinas to accommodate the growing sailing traffic, eager to be free from its winter moorings and start summer sailing.
In particular the flotillas and sailing schools were on the move, making their way from winter moorings to their summer bases throughout the beautiful Greek islands. Over a cold beer or two I listened to the various perspectives of members of the sailing fraternity concerning the impact on their businesses of the current economic crisis. Suddenly I found myself performing a mental external environment analysis and realising how important this is in identifying the opportunities and threats for a small business.
Let me explain. Many of these businesses are owned and operated by EU citizens who are not Greek but who have been resident in Greece for a number of years, often raising their families there. Their boats are usually registered out of some other EU country. They rely on the seasonal trade over the summer to earn their living, with usually some additional ad hoc boat-related work to see them through the winter. Times are hard due to austerity measures and businesses struggling to keep afloat (pardon the pun). A quick PESTLE analysis highlights some of the reasons why.
The political situation in Greece is frequently in the news. The current government formed by the Syriza Party, led by Alexis Tsipras, a well respected economist prior to moving into a career in Politics who is well liked in Greece. However discussions about the bail out and the Economic Union’s perception on the need for austerity measures mean there is the ongoing threat of of separation from the European Union. The political situation is unstable, but that is unlikely to stop people taking sailing holidays.
The economy is suffering. Salaries have been cut for key workers within the emergency services to the extent that many feel they need to move out of Greece simply to be able to support their families. Public services are under-funded to the extent that, in the areas outside the key tourist hotspots, rubbish lies uncollected on Athens streets. Lack of these highly skilled workers, along with teachers and other key professionals, has a knock on effect on the population as a whole.
On the Islands the situation is slightly better, supported by its own micro-economy for most things. However there are still shortages. Worries about supplies of fuel and potential runs on Banks and ATMS result in most of the floating population keeping wallets and fuel tanks full in case a dash to an Italian anchorage is required. The survival of each business is now inextricably linked to the success of the Greek economy. This may affect the ability of the small sailing businesses to operate.
The Greek people are affected by the economy in terms of its impact on services and wages. However they appear to have a different set of principles and work ethic to the Northern Europeans. Some appear to enjoy life more, and do not seem to measure success through wealth or ownership of assets. They are, on the whole, warm and happy people who welcome tourists and understand that a good customer experience is essential to their livelihood. The sociocultural aspect of life amongst the Greek islands is good. This will encourage the sailing crowds in.
Although most small sailing businesses can source the technology needed in order to sail via online operations based outside Greece, the infrastructure to support processes such as annual registration of a boat sailing in Greek waters, does not exist. There are many regulations that need to be adhered to within the sailing business, all are checked manually, and many times as the information cannot be shared. This is inefficient from the perspective of the government;, and expensive from the perspective of the business. Technology is inconsistent with respect to key support services. Again it’s the ability of the businesses to operate that will be affected.
Changes to the laws happen frequently and there is no robust process for their communication. In addition there are a myriad of legal obligations that have to be followed. For example, and based only on hearsay over those cold beers, tax regulations instituted by the EU mean that tax must be paid in the country of operation rather than in the country registered, so many have moved their businesses to Greece, and now sport the Greek flag on their masts. The laws can be breached inadvertently affecting ability to operate again.
Finally nothing rivals the environment that the Greek Islands offers to small sailing businesses with endless sunshine, good winds, beautiful waters, picturesque villages and small islands not accessed by the mainstream tourist trade, plus some of the best antiquities around. The environment is top class and will continue to draw potential sailors to the region.
So there are a real mixture of opportunities, such as great sailing weather, beautiful scenery, friendly people; and threats, such as unstable political, economic and legal systems to consider when analysing a small sailing business in Greece. Whether a business remains or moves on, however, seems to come down too an emotional attachment to Greece and its islands, more than a hard analysis of the business risks!
Requirements reuse is both an interesting and frustrating subject and one which comes up periodically on discussion fora. There is a wealth of discussion about it, but no general consensus on what it actually is.
Re-use as a concept is a familiar one within the software development world and has been around for a while. However in the requirements engineering field it isn’t common, either at the knowledge or the artefact level even although local pockets of reuse seem to exist. There is an increased management expectation of requirements re-use in parallel with the introduction of Requirements Management Tools. The perceived benefits are significant savings in terms of reduced analysis time, improved quality and elimination of redundant development effort, all leading to a reduction in the overall delivery time of a project.
But what is Requirements reuse anyway? There doesn’t seem to be a single agreed definition of what it actually is. The best definition I’ve found so far defines reuse as “the ability to use an item again after it has been used already”. This includes conventional reuse where the item is used again for the same function and new-life reuse where it is used again for a different function.
The range of projects undertaken in today’s world presents Business Analysts with many challenges. One challenge we need to consider is how to represent and analyse more than one information type.
During the seventies there was a lot of research into representation for information or knowledge types. This area grew rapidly in late 1980s onwards providing guidance when and how to use knowledge representation techniques for solving particular problems.
Workflow projects are fascinating projects to undertake. They touch so many aspects of the business analysis role such as business strategy, organisation models, process and data. They also offer many potential benefits to the business. Yet it seems to me that these types of projects remain an unpopular choice amongst the business analysis population. As workflow offers the BA a chance to consider static and dynamic aspects of business systems, using a variety of techniques and work across organisational boundaries, I find it hard to understand why more BAs are not queuing up for the opportunity to do this work.