CPSC 3720 - DAY 4 JANUARY 20, 2017 ================================================================================ Functional requirements .Describe interactions between system and its environment and users. .Ex. Tenant can unlock door. Non-functional Requirements .Describe aspects of the system not directly related to functional behavior of the system .Not something the user can do .Still a requriement of the system NON-FUNCTIONAL REQUIREMENTS --------------------------- FURPS+ .Functionality } .Usability } .Reliability } Quality Requirements .Performance } .Supportability } .+ .Implementation } .Interface } .Operations } Constraints/ Pseudo Requirements .Packaging } .Legal } Usability .Conventions adopted by UI .Scope of online help .User Documentation .How easy is it to use the system. .Not always the most important Reliability .Robustness .How well the system deals with errors. .Safety .Ex. software running machinery in a factory .Fault tolerances .How accurate it needs to be, similar to reliability .Security .Data security, how easy it is to break into. .AKA dependability Performance .Response time .time within system .Throuput .How much data can it handle .Avaliability .Expected downtime. .Accuracy .How accurate the information is, loss of precision Supportability .Adaptability (after deployment) .how easy is it to change .Maintainability .How easy it is to maintain .Portability .Move it to different software/hardware systems. Implementation .Specific tools, languages, hardware platforms .For hardware the customer may already have. Interface .Constraints imposed by external systems .Formats to exchange data .Format for data for commmunication .Not GUI Operations .Constraints on admin and management of the system while operational Packaging .Delivery of system .Installation .Restriction on installation media Legal .Licensing .Accessibility .Physical disabilities .Privacy .Privacy ex. FERPA, HIPPA .Certification REQUIREMENTS ESTIMATION ----------------------- .Estimating hhow long it will take to implement a requirement .Also tied to costs to implement .Difficult to do .How many hours will it take to design, program and test a feature? .It always takes longer than expected. .Hard to account for roadblocks or changes in customer requirments .Use a simpler scale .1-10 scale on how difficult a feature it will be .If using iterative method, one iteration can handle a total of 100 feature/story points. .You don't want the highest point value to be more than iteration worth of work. .Break requirments and features into smaller pieces for more accurate estimation. .Easier to estimate smaller chunks of work .Add back up for the total for that feature. .Ex. painting a house .You estimate on individual rooms .Easier to look at square footage. .In iterative methods, you just want a high level estimation. .estimation will not be exact.