hybridstrong, modern approach for large, complex projects
- BRUF + Iterative construction
- significant up-front planning
- course corrections and revised priorities within semi-flexible scopecurrent stateway organization currently operated
- identifying problems/opportunities that IT can addressfuture stateway organization will operate with new/improved softwarerequirementsfuture
- current
+ refactoringfunctional designhow the system works from customer perspective
- logic, data, user interfacetechnical designtranslate functional designs to programming components
- focus on underlying techarchitectureoverall approach to data storage, processing, communications
- focus on underlying techstrategylong-term important decision about which high-level activities the org will engage in and which ones it will abandonbusiness modelarticulation of the business logic and the value proposition that the business offers to its customerstacticsdetermine at a high level how the org will reach its strategic goalsoperationsdetermine how an org acts in its day-to-day operations to achieve its tactical and strategic goalsdiscoveringfinding out the facts regarding the current way in which the org conducts businessstructuringpresenting the findings of discovery in a systematic, consistent, and easily understandabletransformingdetermining how to change the way the organization conducts businessactivityset of actions that an individual or a group takes that contributes to the outcome of a processcontrol/object flowarrow; movement of control within an activity diagram from one activity to anotherdecision nodesymbol in an activity diagram illustrating multiple possible outcomes selected based on well-defined criteriaobjectshows the movement of a document or a set of data from one activity to another
- ex: <<datastore>>fork/joinsymbols in an activity diagram signifying the beginning and end of a set of parallel activitiesinitial nodeplace in the beginning of an activity diagramfinal nodeplace in the end of an activity diagramflow finalend of a decision node when is a nosignalsent to inform another activity regarding a need to take actionswim lanesection of an activity diagram reserved fro activities performed by a specific actoriterationrepeating an action or set of activities multiple times, depending on a set of conditionsdomain of interestarea of human activity that one is planning to transform using systems based on IT
- understanding the data used by an organization and structure of the dataentitiesconcepts (or simply things) in the domainattributesdescriptors of the things in the domainrelationshipsdescribe how things in the domain relate to each otherentityphysical object, person, community, event, or other such concepts that an org is sufficiently interested in to include in the domain modelattributecaptures specifications of characteristics, characterizations, or labels of an entity instance
- identifiers are underlinedcardinalitynumber of entity instances associated with each other
- 1 to many
- many to many
- 1 to 1user storybrief narrative description of a system capability that includes a *user role*, a need thats important for the user role, *user's goal in user role, and a justification for the need*user interface (UI) modelmodel of an information system user interface that allows a user to explore the system's capabilities in an easily understandableRole of User Interface Models in Supporting User Storiesintegrate a simple UI with user story
1. wireframe
2. mock-up
3. UI prototypewireframehighly abstract model of an app or webpage that defines key structural elements without detailsmock-upabstract model of an app that includes visual representations of key controls but no functionalityui prototypemodel of an app with limited implementation of key functionality
- to capture a simplified but sufficient subset of essential characteristics of a product/service so that the target can be evaluated and improvedhome grounds modeldefines different sets of project characteristics in which agile vs. plan-driven approaches are most appropriate and likely to succeed
- functional requirements, non-functionality requirements, teamtuning approachmost project don't fall perfectly in a single home ground so projects are "more agile" or "more hybrid"product scopewhat needs to be achieved and the work that must be done to deliver a project
- hybrid focus more on epics rather than individual user storiesDevelopment of Custom, Proprietary Software Solutions- justification for use (distinctive org capabilities, collect data, internal dev is cheaper)
- costs and risks (expensive and long-term)Licensing Commercially Available Software Solutions- justification for use (shared environment and maintenance work, lower risk and faster access for system)
- cost (licensing + hiring partner, usability challenges, vendor & switching cost)open-source softwareavailable w/out direct monetary cost, including source code
- modifications need to be made available to others for free
- broadly used tool/environmentproject visionwhats the project about?
creates at project outset
- summarizes: stakeholders, business problem/opportunity, solution overview, business benefit and definition of success criteriastatement of work (SOW)created at end of BA
- based on key requirements, implementation approach, sourcing
- preliminary project planbusiness casesummarized info of:
- project vision
- cost/benefit analysis grid
- key risks
- timeline
- team roles
- reporting plan
- approvalsproject chartercreated during final project approval and execution planning
- provides overarching framework and guidance and authorityriskpotential future problemissuecurrent problem, question, source of uncertaintyrisk mitigationdetermining what to do about identified and evaluated risks
1. risk avoidance: reduce likelihood
2. risk limitation: reduce threat
3. risk transference: transfer to other parties
4. risk acceptance: concern is low and costs to avoid/limit/transfer are highusability and user centered designsix principles; essential to understand the users, what the users want to achieve with the system, and the environment in which the users operateNielsen's Heuristics (2018)visibility of system status
- match b/w system and real world
- user control and freedom
- consistency and standards; error prevention
- recognition rather than recallSchneiderman's Golden Rules (2016)strives for consistency and enables frequent users to shortcuts
- offer informative feedback
- reduce short-term memory loadtext fieldallows user to enter text or numeric inputbuttondefined region of screen that triggers a specific actioncheckboxgroup of items from which a user can select relevant ones (zero to many)radio buttonsgroup of items from which a user can select exactly one of them at a timedrop-down menulist of items that is extended, typically on the top of a data entry region, for the purpose of giving a user a chance to select one from the list
- could also be used as a navigation controllist boxlist of items from which a user can select zero to many itemstogglescontrol type that allows a user to select one of two possible options
(iphone turn thing)pickerscontrol type with which a user can build one acceptable value (such as date/time combination)slidercontrol intended for selecting a value (often an approximate one) from within a rangemessage boxsmall window that provides information that the user is likely to find useful
- often force acknowledgement before the user can move forwardmodal windowwindow that opens on the top of the main window and requires a specific user action before it can be closed and the main window process continues(asynchronous) notificationsmessages that the system makes available, often through a relatively subtle mechanism (such as a number above an icon or label that the user needs to click to access the message)progress barinformation component that shows a user's progress through a set of predefined steps