Most discussions about software requirements deal with business information systems and similar projects. The world is also full of products that use software to control hardware devices, broadly called embedded systems. Among countless examples are cell phones, television remote controls, kiosks of all sorts, Internet routers, and robot cars. This is the first article of two that will discuss some of the requirements issues that are especially important to embedded and other real-time systems.
Given the right circumstances, even good people can go astray as our psychology push us down the slippery slope of questionable behavior. A little bit of knowledge about the forces that drive us to cheat can go a long way helping avoid bad behavior. Here are some common landmines to become aware of so you can make sure to defuse them as you embark in a new BA project
The problem with many Unified Modeling Language (UML) educational texts is that they present the various concepts each in isolation; so you see a use case diagram for one problem domain, a class diagram for an entirely different problem domain, and you never get to see the important traceability between the diagrams.
In this case study we aim to put it right by working through a single problem from use cases and activity diagrams, through sequence diagrams and state diagrams, to class diagrams and component diagrams. We have arranged the case study as three distinct perspectives or aspects as follows.
The context diagram and the use case diagram are two useful techniques for representing scope. This article describes two other methods for documenting scope: feature levels and system events.
With the rise in popularity of agile methods, business analysts and product owners often use the term “agile requirements” to label their work. We do not care for the term “agile requirements” because it implies that the requirements for an agile project are somehow qualitatively different from those for projects following other life cycles. A developer needs to know the same information to be able to correctly implement the right functionality regardless of the life cycle being used.
The Business Analyst is in a great position to constantly focus on the desirability of the product. A well-defined requirement elicitation process must be focused on defining the problem the business is trying to solve for our customers. If defining the problem is the first step in your requirement process you are on the way to guaranteeing that the delivered product will provide value to your customers. Throughout the development process you will be able to monitor if the product is actually solving the problem. Additionally, your requirements should be directly related to solving the problem. It is a BA’s job to question the value of every proposed requirement that product owners want to add. If the requested feature or function is not directly related to solving the problem then it should be taken out of scope.
brought to you by enabling practitioners & organizations to achieve their goals using:
Advertising Opportunities | Contact Us