Intro to Software Engr
Intro to Software Engr CS 3300
Popular in Course
Popular in ComputerScienence
This 0 page Class Notes was uploaded by Alayna Veum on Monday November 2, 2015. The Class Notes belongs to CS 3300 at Georgia Institute of Technology - Main Campus taught by Staff in Fall. Since its upload, it has received 13 views. For similar materials see /class/234099/cs-3300-georgia-institute-of-technology-main-campus in ComputerScienence at Georgia Institute of Technology - Main Campus.
Reviews for Intro to Software Engr
Report this Material
What is Karma?
Karma is the currency of StudySoup.
You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!
Date Created: 11/02/15
Precise Speci cation Sorting is a wellunderstood concept that is surprisingly hard to specify precisely Provide an Englishlanguage statement describing the expected behavior of a routine SORTXY where X is an input vector of integers and Y is an output vector You may assume the routine sorts in ascending order Trouble Spots Does your specification handle the following cases lt12gtgtlt4 5gt lt1123gtgtlt123gt lt123gtgtlt1123gt lt l33 222gtalt12 23 33gt English Speci cation Y is an ordered version ofX Y is ordered Y and X have the same elements With the same numbers of occurrences More Precise Speci cation Now express the same behavior more precisely First give a signature parameter and return types Next determine the situations in which you expect the program to work its preconditions Then try to describe the relation between the input and the output in English postconditions Finally translate your speci cations into predicate culus SIGNATURE SIGNATURE Vectorltintgt Y SORTVectorltintgt X X and Y are explicitly named so we can use them in the pre and post conditions Preconditions Preconditions For SORT any input vector of integers X qualifies The preconditions assume the types are Thus SORT is always able to run This precondition is designated as true Postconditions Postconditions 1Y must be the same length as X Postconditions 1Y must be the same length as X 2The output vector Y must be ordered Postconditions 1Y must be the same length as X 2The output vector Y must be ordered 3The contents on must be the quotsame asquot the contents ofX Postconditions Review of Predicate Logic 1 Y must be the same length as X 2 The output vector Y must be ordered 3 The contents on must be the quotsame asquot the contents ofX Propositional logic assertions about the relationships among constants 7gt06gt0gt76gt0 Everything in X must be in Y Everything in Y must have come from X The number of occurrences of each item in Y must be the same as its number of occurrences in X Anotherversion of hese properties is to say that Y is a permu a ion ofX Yet another version is to say that ifthe contents ofX and Y are treated as bags the two bags are equal A Dag l5 llllte a set except that multlple lrlstarlces or an element are allowed and that a count l5 kept of the occurrences Predicate logic quantified assertions about the relationships among variables and constants VXOVY0Xgt0AYgt0gtXYgt0 Syntax of Predicate Logic sentence simple proposition pred cate 39 sentence NOT sentence sentence AND sentence sentence OR sentence 5 sentence IMPLIES sentence ltgt sentence IFF if and only if V variable I sentence ALL 3 variable I sentence EXISTS Syntax 2 simple proposition P Q R predicate predicate name term predicate name f g h term constant variable constantabc012 variable X Y Z Predicate Calculus for SORT Vector Y SORTector X pre true post LENGTHX LENGTHY ORDEREDY PERMUTATIONX Y 1 Y is the Same Length as X X and Y are vectors Vectors as a datatype have properties one of which is their length X Y orXlength Ylength orX Y This raises the question of who is responsible for allocating the space for Y Caller preallocates or sort does the allocation In the former case the assertion would be a precondition in the latter it would be a postcondltion 2 Y is ordered 39 Vi1 iltlYlYi Yi1 For all positions in Y from the rst through the one before the last the value stored in the vector at that position is no greater than the value at the next position Vectors have an indexing operation Counting starts from 1 39 V reads quotfor allquot 3 The Contents on is the quotsame asquot the Contents ofX Two vectors with the same contents but in which the values may be ordered differently are called permuta tlons Y is a permutation of X PERMX Y l Precondi ion X Y Postcondi ion X 0 true X1 Y1 PERMtailX tailY 3 1ltjYX1 Yj PERMtailX concatY1 j1Yj1 Y REQUIREMENTS ANALYSIS Custom er Perspective GA Tech CS 3300 AY 2002 Fall 2001 Chapter Learning Goals 0 Distinguish C Customer requirements from D Detailed requiremenm 0 Be equipped with ways to express Crequiremenm 7 exploit use cases 7 exploit state diagmms 7 sketch user interfaces 0 Be able to Write first parts of a Software Requiremenm Specification C vs DReguirements SRS EEE l1 Intr oduction Overall D descripti39on requireman C 3 Speci c requiremenm requirements Supporting information a To Be Performed With Each Reguirement Each requirement must be I expressed properly I made easily accessible I numbered I accompanied by tests that Verify it provided for in the design I accounted for by code I tested in isolation I tested in concert With other requirements and I validated by testing alter the application has been built Tmical anszE for 1 Identify the customer see seam 22 Gummy Reguirem 2an 2 Interview customer representatives idemin mums and needs Rwimwm mm m 3 Write C7r equirements in standard document form m cm may Insp ct req ements 0n customer uppmmi 5 Build D7requirements mud1pm IEEE 8301993 SRS Table of Contents and get cammght Ennissmnfmm IEEE 1 Introduction 2 1 6 Memory constraints 1 1 Purpose 2 1 7 Operations 1 2 Scope 2 1 8 Site adaptation 1 3 Definitions acronyms requ39 amp abbreviations 2 2 Product functions 1 4 Refer ces 23 User characteristics 1 5 Overview 2 4 Constraints 2 Overall description 2 5 Assumptions and 2 1 Product perspective epen encies 2 1 1 System interfaces 2 6 Apportionng of 2 1 2 User interfaces re uiremenm 2 1 3 Hardware interfaces 3 Speci c requirements 2 1 4 Software interfaces rec chapter four 2 1 5 Communications 4 Supporting information 39 terfaces rec chapter four Example Application Encounter 122 I Roleplaying game which simulates all or part of the lifetime of the player s character I Game characters not under the player s control called quotforeignquot characters I Game characters have a number of qualitim such as strength speed patience etc I Each quality has a value I Characters quotencounterquot each other when in the same area and may then quotengagequot each other Example Application Encounter 221 The result of the engagement depends on the values of their qualities and on the area in which the engagement takes place I Player characters may reallocate their qualities exceptwhile a foreign character is present I Reallocation taking effect after a delay during which the player may be forced to engage I Success is measured I by the quotlife pointsquot maximum attained by the player or I by living as long as possible Before interview 1 List and prioritize customer interviewees 7 most likely to determine project s success 2 Schedule interview with fixed start and end times 7 at least two from development team should attend 7 prepare to mpe At interview 3 Concentrate on listening W Don t be passive probe and encourage 7 persist in understanding wants and exploring need 7 walk thr gh use cases also data ow state diagrams Take thorough notes 4 Schedule followup meeting After interview Draft SRS Crequirements using a standard 6 Email customer for comments En e Forei n Character Use Case W Usecuedetu39ls u FnQaQP Foreign Character Travel to adjacent area designer Set rules 1 Sy em displays the foreign character in the same area as the player s 2 Sy em exchanges quality values between the two characters 3 Sy em displays the u L Travel to adjacent area Engage foreign character 4 Sy em displays player s aracter in a random desi ner g area Partial Encounter StateTransition Diagram Player clicks Complete quali es setup menu Foreign character mum Engaging area Usin Condltlons in State Transltlon Dia rams event condition Player 0 moves to quot 9quot adjacent MEN urea quot95quot foreign character absent condition Steps for Constructing Step 1 KNOW your user User Interfaces C Step 2 Understand the business function in question C Step 3 Apply principles of good screen design C D Step 4 Select the appropriate kind of windows C D Step 5 Develop system menus C D Step 6 Select the appropriate device7based controls C Step 7 Choose the appropriate screen7based controls C Step 8 Organize and lay out windows C D Step 9 Choose appropriate colors D Step 10 Create meaningful icons C D Step 11 Provide effective message feedback amp guidance D adapted from Galltz Gal 12 amendment process Level of knowledge and experien e 7 cornqu liveraey high moderate low Know 7 eriehee moderate low 7 experime with similar zipliczu39nm high mdmte hw Your 7 mlucatim 39 schnnl E a gums M 135 wpm 55w39pm 1n wpm e typing stall Characteristics nfthe user39s mks and jobs 7 Type nfuse thiszpplilztinn mummy discretionary 7 Fnalmlcyn use mumat milan occasional meineliieiime 7 Turnover me for emplnyeee high mdm39z low oftzsk 39 modern mung ihmugh manuals n tlE i c vegi mum mamger pmt zssinml secretary elerkeu Psyehnlngieal characteristics ofthe user 7 able amine mmn ls inh positive neutral negative 7 thahlemmiimvim high xmdmve law 7 Cnghiiivesiyle vexhalvs sperm analyticvs imuiiive enmeievs abstract Physical characteristics of the us 7 Age wine middle aged elderly 7 Gender male fermie 7 Hahdedhees Ml right ambidemdus 7 Physicallnnd39rzps oilim l aereeu39vevisinh dmf mum lundizp adapta l fmmGalilz Caz Sketch ofEncountzr Stat Transl lon Dla ram Encounter Foreign completed PW mm chareerer to Mjeeenr llm Emquot We quit v leigig IDI39OIIII ehrecler cherecler Present eheenl mamsndIWMM hemmed drumme mlmmnw nmsgm Know Your Users 1 Level ufknuwledge and exp lence 7 computerllta39acy blqbmudemteluw newneylennu 7 synemexpenence blqbmudemteluw nmmnzrpfes Wins 7 Expmmcewlth Smilarzppllmuons blqbmudemteluw nmmnzrpfeslzmmdums edumum advanced degree cullede lhdh sdmd use Izhgrzdebrms 7 mdmglevel gt12yezi39ssdiuumq l542lt5 nuseueyenprelaiguqe 7 typingsl ll 135wpm55wpm10wpm upmvmendienumes Infeszrpfes alphasuz lmlheblzllr mms Physical characta39lsucs uftheuser 7 Age yddndmddleededeldeilynuseqewdwmpies 7 Gender mleiemle 7 Handedness leitilqMzrrbldextmus 7 thslml handlmps blindd212le Mann deal lrmtoibzndlczp adapted mm Galltz Gal suggested aeudns for the lane added by the author uh Express Customer 39 12 I If the requirement is simple and stands alone express it in clear sentences within an appropriate section of the SRS I If the requirement is an interaction between the user and the application express via a use case 1 Name the use case 2 Identify the actor the external user role7 usually a person Avoid speci c names and values as in Ed enters 300 Instead say customer enters deposit amoun linkd mslnnehmuw domain Hemmeme ml mrymliwihmssm
Are you sure you want to buy this material for
You're already Subscribed!
Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'