KEMBAR78
Software Engineering Notes BCA 4th Sem | PDF
100% found this document useful (1 vote)
6K views66 pages

Software Engineering Notes BCA 4th Sem

Software Engineering proper notes according to BCA syllabus

Uploaded by

Akash Shukla
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
100% found this document useful (1 vote)
6K views66 pages

Software Engineering Notes BCA 4th Sem

Software Engineering proper notes according to BCA syllabus

Uploaded by

Akash Shukla
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 66
Qe 1s “What do yo mean by Software ? ; Ans. Sometimes abbreviated as SW and s/ N; software is a collection: ‘of. instructions that enable the user: o interact, with .a computer, its hardware; or perform tasks. Without. software, computers . would be’ useless. For, example, internet browser, you could’ not surf. the ‘Internet ». or read ‘this page and without’ an operating. system, the browser could notrun on your computer. The picture to. the. right shows a Microsoft. Excel - bor an example. oF a Pereadeheet software pregram.. ” ‘ Programming Paradigm ': This paradigm is related osely to programming aspect of software development. This cludes, ape te ‘ wi aN KeaRE @ Coding Gi) Testing (Git) Integration, (ae TRS MARS. | WR RRS RcARE) AVRO s | ‘Ans. Waterfall Model “Waterfall Model’. because of its diagram matic représet ‘resembles a cascadé iof waterfalls. 1. Requirem ‘analysis and specification phase : The goal of this to, usderstand the exact requirements of the ent them. properly.\ This activity i is usually 2 as the goal is to document all functions): p ca ‘and interfacing requirements for the . The requirements describe the "what" of a system, not =. Implementation and unit testing PHase = lee thy Phase, design tis implemented. ‘If the SDD os Sheen > th implementation or coding phase proceeds soo _ecause 5 the information needed by the software development is contaj,, in the SDD. A During testing, the major, activities are centered around {), : etamination ‘and modification of tie -code. Initially, small mody, are tested in’ isolation from the rest) of ‘the software produg These are problems associated with testing a module in isolati,, How do we run a module without anything to call it, to be calle by it or, possibly, to output intermediate values..obtained durin, ; execution ? Such problems are: solved in this phase and modu}, : “are, tested after writing some: overhead code. - 4. Integration and . em testing phase important phase. Effective ‘will co: of higher quality’ software products, ‘more users, lowe , maintenance costs, and more ‘accurate and reliable results. It i, a very expensive activity an consume§, one“third to one-half ¢! 7 the cost of a typical development, Project) : € As we know, the purpose of unityfesting is to determine tha each independent module is. (correctly implemented. This give little chance 'to determine ‘that ‘the interface -hetween modules itz also correct, and for thif feason integration testing is System testing involves\the testing of the entire system, whereati software “is apart ofthe system. ‘This is ‘essential to builic ence i ‘developers before Software is delivered to the in the “market. ‘ ee is a task that every devel - Software ‘is delivered to the ¢ operational. ' Therefore, spent and effort ‘required release is very ‘significant, that it is a very! e poorly managed’ lobody. wants : Software maintenance i error: correction, enhancement of nab; ity that includes letion of obsolete str Vantimizatnon.' ihe fr se. Of. this phase 15 to ilities, and’ optimization. ine purpose’ eae ase sea value ‘of the software overtime. This phase may y ‘ ) years whereas devélopment may be 1 to 3 of "define ‘before 1d “design ‘before’ ‘code". This. model expects complete fe'requirements early. in' the process, waterfall. model, but ‘these: may, ‘useable ‘product is released atthe | ach'-reléase ‘providing additional fax onali juire nalysis ‘phase, customers and many requirements.’as Possible ‘and ‘prepare, evelopers and customers then prioritize these” ers. ~ jon of users. ASteae ae ere are four phases in this model “With active participation of users Requirements, We: User i ‘ inning (description, [7 , e f Requirements planning phase, : Requirements “are captured using any group clicitation. techniquel. Only issue is the for unders-anding the project. active; involvement of, users User description |: doint teams’ ol) developers ‘and : users stituted to. prepare, understand’ and’ review the ents, The team may use automated tools to capture ‘ation from the: other users. © el 5 “SOS Construction phase : This phase ‘combines the detailed design, coding ‘and testing phase of ‘waterfall; model. Here, we release, the product to customer; It is'iexpected to use code generators and other {types :of productivity generators), screen : This phase ‘incorporates acceptance ion of the system, and user: training. typing Model. , (2016) stotyping Model i jaterfall model is that the working ite in the process, thus: delaying alternative to this is “to first e software insted/Of, developing totype is devéloped as per illy, it¢has limited functional Refinement of. -requirements as per suggestions [Implementation and Unit testing]. | Integration & System testing |] lm Prototype Model The developers use this, prototype 10 Feimhe Ve Dduiremens, and prepare the final specification docunient. Because the work, : juiated: by thi customer, it is reasonabj. th expect that the resulting specification document will be corre, When the prototype created, itis’ reviewed: by the castome, ‘Typically this ‘revi e8 feedback to, the developers that be,’ to remove uncertainties: in the requirements of the software, 3;,; starts an’ iteration ‘of refineinent | 4 ler to further Claris, Tequirements as shown in Fig! x i Ra é but is. not suita). saa) e extr: atof an quality software, ‘This miodel. requires involvenient oft thie customer, which is no} "prepared when’ something unforeseen happened. Barry Bochm \ recognized \this and tried to incorporate the “Project risk" factor into,a life cycle model. The result is the spiral model, which was presented in 1986 [BOEH86, sy and is ‘shown in Fig. The redial dimension, of the model represents the curaulatiye cxets. Each path around ‘the spiral is indicative of increased costs. lar dimension represents the progress made in’ completing planning: is eee risks are and customers evaluate the é operation or Davalop, verity Late moe . An-important: feature: or’ the spiral Teves, Plage is completed with a ‘review ‘by’ the people concerned with th, project’ (designers and. progratnmers). This review consists of 4 review of all ‘the products developéd up to that ‘point and include, the plans for the next cycle. These \plans ‘may’ include a Partitio,, of the product in’ smaller portions for development or. component; that are implemented by. individal ‘ groups or persons. If the plan for the development fails, then the spiral is terminated. Otherwise, i S| initiation ‘of new or: modified. software. The advantage: of this model is ‘the wide range of: options to accommodate ‘the good: features. of other life. cycle models. It becomes equivalent another life’ cycle; tmodel in appropriate situations. . It. also The ‘spiral “model has’ resolved before. it can be a These difficulties ‘include Kk ‘ee r idance in determining objectives, constraints, alter ; ‘ri assessment, expertise; and Providing , -for many applications. i Q. 14; Explain the ad 2 different models. (2) Each Phase “has well defined inputs (3) ‘Helps, project manager in proper plannin; a ‘Provides a. template into. which meth c code, test and support can be placed... es of Classical Waterfall Mod e\ disadvantages of classical: waterfall model”: “:; @ One way. street (sequential in nature). “ (2) It’ ‘lacks overlapping and) interactions among ‘plies: » 8), Usets have little interaction’ with the project team. @ Model), does not support, delivery ‘of system in pieces. (5):-Not suitable: for new projects ' "because of uncertainty ° ‘in the specification. ‘i Advantages of Iterative Waterfall ‘model : The eevee of interative: waterfall model are given, below ; feedback’ nee ee and -hence in: nov wd for. project in which! requirement are not well understood. (3) Easy error: corrections : Disadvantages: of: Iterative ‘Waterfall odel : Following are, the: disadvantages of iterative waterfall @ It: is harder ‘to. manage this model: . No‘ clear ‘milestone’ in‘ the development. process. vis really: finished (until the system is no longer * I ‘ate. user requirements are . obtain iN r participation, and support ee eustomier implementation compromises in: 3 quickly... ) The’ ‘developer and cases: between : understand end , to risks ‘at each evolutionary. level. “Disadvantages of © Spiral « Model: Following are. the disadvantages ‘of spiral model: : + (2) It is difficult ‘to convince customer that the evolutionary approach i is controllable. (2), Model requires expertise in risk ‘management and éxesttent agement, skill. (3) Use of the model ' may be expensive anid ‘even unaffordable. rea Q. 15. Distinguish pebween gener software ee y Ans. “The text in bold in _ that type of software f Custom software Good fit: It will’ Gites: ee COMiseg Th e application thay take months or even years to develop New staff will need to be trained to use ithe custom software, leading to} added ‘costs and time taken up for the training. Lower training coats, You can} expect now staff to be able to use|) A \genoric .package immediate! i For inatanco, how. to | use popular word application’: . processing |; Ma RY Custom’ file’ formats) or having’ to] Simpler to: upgrade: Suppliers write‘ new’hardware drivers may | continu: develop, ,. their maké upgrading more difficult and|software)\and. periodically, offer certainly more costly thain a'generic| the next version. er of the software is often | Future ‘proofing. Much of the fall company and so if they | géneric applications are produced et taken’ ‘over, then |'by maasive corporations that are vare may no lotiger| legs likely’\to fail. And even if they are) taken. over, then the | new. company, is very. likely to t isting customers. “L Software specification, Th th » In thi the pranas and Constraints on its operation must be defined: _ ; are. design and plementation. The software that meets the specification’ is meets is ‘prod; ... 8, Software validation, Th that it has all the functionalities ap \, we Q. 17. What is Software Development Laraogie sD ILC) ? (2016) Ans. _ Software: Development siete (SDLC) SDLC is a process followed for ‘project, within a software organization. It consists of. led plan describing how to develop, maintain, replace an ce specific software. The life cycle defines a dt fou tinproving the quality of software and the PS at process, — ew The following figuré|is & graphical/represemesuss vt eNe Vario, “Stages of a typical SDLC: | : : fine ‘and document m."appréved. from the be tne itocck” shes s ition, document: which consists duct requirements to ‘be désigned Bhd “Goveloped Gproject life ‘cycle. hie oes st j ‘Pesigning the product’ architecture : SRS is »product architects’ to¢ome out with the best e product to be developed. Based on the ied in’. SRS, usually more than one design oduct architecture is proposed and documented jocumént Specification. iewed by all the important stakeholders and parameters as risk assessment, product budget and time constraints , elected for the product. early, defines ,\all the . architectural ‘with its communication and data ternal and third party medules sdules: of thegpropbsed . the minutest of the c th gramming tcols like. compilers, : t generate the «code. ges such as C, C++, g. The. programming ype of: software being ating the Product : This stage is usually a e. ‘stages as''in'the ‘modern SDLC models, the oe (Wities are mostly involved in all the stages of SDLC. - product ‘whists stage'tefers’ to ‘the testing \only ‘stage of. the retested, Teer froducte defects are reported, tracked, fixed’ and Product reackies the quality standards defined ; eployment in the Market and Maintenance 201 yment in the Market, anc e mae teecerttvet ‘is tested’ ‘and ready, tobe deployed it ‘is ‘deployment: ‘hat y in the appropriate market. Sometime product strat s 8 as. per the organizations. business ifiret he rolaaced in a ‘limited &. 2. sxplain: characteristic of a Good SRS, Ans. Characteristics of a Good SRS "Po properly satisfy the basic goals, an SRS sh certain properties. and. should contain different types requirements, A good SRS is : ; (i) Correct | Gi)-Complete. (iii). Unambiguous (iv) Verifiable (v) Consistent ; (vi) Ranked for importance andor © stability (vii) Modifiable fina 4 ‘ (viii) Traceable. ; Oo s An SRS is correct if every requirement mena i in the SRS Yepresents something .required in the final system. An SRS is complete if. everything the’ softw. and the responses of the software total’ classes. are specified ‘in the SRS. Co: hand-in-hand whereas correctne: is done ‘correctly,. complete indeed specified. Correctnes than completeness of software development ‘cycle. And document is known as the Software equirements specifi ion. (SRS). SRS completely describes what the proposed software system should be without describing how the software will do it. In ‘systems Engineering and _ software. Engineering, Requirements Analysis: encompasses those tasks that go into determining the needs or conditions to mect for a new or vaking® account of the possibly conilicting he various stakeholders, such’ as: beneficiaries neering, It is sometimes referred to proposely quirements gathering; requirements capture, or requireme! specification. The term requirements analysis can, also be, applied: specifically to the, analysis proper (as opposed to dicitation’ or documentation of the fequirements, for * instance), ' uirements maust be actionable, measurable , testable, user to ole meee a ation or requirement , describe ‘the complex behaviour, of, the ‘proposed ‘oftware. Requirement ysis involves number of, Suggestions uch a Gi) Set the * ‘priorities “ of ion » (iv) Functionally: ‘decompose the requirements (v) Record the Fequirement ee (vii) Reduce ithe comple: we Q. 7. What do you, understand by analy2ms Problen) alyzing a Problem The basic purposé of problem analysis is to: understand {,, problem and its, const ‘aints. Its main ‘aim is 'to\understand the the users, what. they. want from the system. Analysis leads to the actual: specific tion. It involves interviewing the ‘clients and the end users. The existing documents,clients.and ‘end users become ‘the mian source of information for the analysts. There are a ‘number’ of methods We will discuss a few ‘among’ them like methodology. The ‘info “interaction. with’ the system ete. It ‘uses: and the system ° model * are) “puilt? i in theminds analysts and it is directly translated to SRS: Once se me of the SRS is ready,:it' may -by. ‘used in fee 2. Structured analysis:': ‘This, functions perf ‘med in the’problem, ; lata input and output the: 3 furictions: it is A top:down ‘peti ment: it helps. an lyst ‘to decide upon the ope. 0 s be obtained a my 0! jany “problems associated» witl cluding problems in defining the in. fostering understanding ‘amo: ies affected: by the development of ‘oblems'in dealing with ‘the volatile nature of req ese problems: may lead ‘to poor requirements’ ‘and cancellation of system development, or else the evelopment of a system that is later’ judged unsatisfactory or unacceptable, has’ high maintenance costs, or undergoes frequent: changes. , By improving requirements elicitation, the requirements engineering process can be improved, resulting: in enhanced system requirements and potentially a much better system. Regerementiiet ‘engineering can be A ees into the activities of require: ents. elicitation, Specilication and .validation. Most: of nts, eachniques: and..tools today. focus: on representation of the requirements. This instead on ‘elicitation, concerns, . those ements engineering that’ are not adequately ation techniques. In elicitation methodology ‘dle. - these concerns. This new. elicitation ing: requirements elicitation: These , Tequirements gathering, evaluation and. integration. Taken by fic’ ustomer a where. the tio’ gathering is an art: and ‘a science. The approach mer ‘in which. informatio: is gathered require: person, common sense, and: knowledge of. what ‘and when. to gather ‘and: pping-stones. eeds to be. “: 2. Way Vesign is Important ¢ Ans. Importance of; Design A ‘good design is’ the key to successful, product. Almos 2000 years ago Roman Architect’ Vitruvious’ recorded th, following attributes of a good, design : : 1 @). Durability : ‘ ; _ Gi) Utility and. Rr ii), Charm. K “A well-designed system is) easy. to ue understandab|, and reliable and. allows for smooth evolution.: Without design we risk: building an: unstable system :.\.° “co @) One: that, ‘will, fail when: small changes. ‘are made ) One that will, be difficult'to maintain...) : Gi): One whose quality , cannot to; assessed ‘until late si A th software | process. .\ ‘Therefore, : software. design should contain g Gtiien complete, accurate: ‘and precise solution toa able in orde to ‘ensure ‘its quality implementation: \<, There ‘are ‘three characteristics: that serve» asa guide fo the evolution of a. good: design: ¥ ah as s, all, of the’ explici ‘wiodel ‘and ‘it mus re. are many definitions of the term "module". jm “a module is a FORTRAN subroutine" to "a modul an Ada’ package" to "procedures and functions of PASCA , and C*, to."C++/Java Classes", to "Java packages" to "a modul ‘4s a work! Lassigment for an individual programmer”. A!l ¢ these definitions are correct. A modular system consist of wel defined, manageable units with well defined interfaces amon; the’ units. Desirable properties of a modular system include (i). Each module is a well defined subsystem that i potentially usefull in other application. . Gi). Each module has a'single, well defined Pe (iv) “Modi ean tbe ‘of er modules, ie (v) Modules should be easier to use than to build. 3 Id be simpler, from outside than from the inside: ) Modularity is the “angle ‘attribute of ashes ‘that allows a Program to be intellectuall ‘manageable. ,It' enhances’ design clarity, which in turn'eases implementation, debugging, testing, documenting, ‘and maintenance of ‘the software product. A: system. is considered’ modular, if it consists of discreet cm can: be implemented on other components. Hei to what extent we shall'mo grows, “the effort associated with’ grows. Fig. established the relatioh number’ of modules’.in ‘a ‘software: ‘Module Gountine ‘ : pling is the measure of the’ degree of. tardependence modules.’ ‘Two niodules with nee coating are ‘Strongly * i! Nerves, -20dul,, interconnected and thus, dependent’, on ra ale with low coupling are‘ not ae a one’ another. “Lo, - coupled” systems are made up of mocules wh ly independent. "Highly coupled’ systems Laenithy La dea} M dependence between modules. For example, if. modules m),, use of shared global variables. Uncoupled' modules have 1 * interconnections at all; they are, completely independent a shown in Fig: \. @) Loosely ‘coupled : some \ a dependencies have more. errors: Loose ‘coupling, onthe other ‘ ad, minimizes the interdependence amongst. modules. This can be, achieved in‘ the following. ways : * i) Controlling the number of parameters passed amongst modules: et Pe : Ra wy (ii) Avoid. passing undesired data to calling module. Gii) Maintain Parent/ Id relationship between calling and called modules... \ any (iv) Pass data, not the ‘control -information. . below, demonstrates two alternative design tor Sete ident record in ‘a’ "Student Information System". Student b Student. S Sen Student ID record EOF ‘Tecord EOF Retfieve student Fi 4 sign demonstrates tight coupling wi gh I : udent SS, ‘ in 2 uous ecessary increa v atc the performance/efficiency. : xplain: types. of ‘coup! ; common, external, coupling from lowest of ways in- ‘which they | can ‘be “Coupled 1, Data Coupling The dependency between module A vand B is said to be data: ‘coupled’ if their dependency is based - on\the fact they communicate by, only passing, of data.’ Other . communicating through data, « the two’ modules. are ndent. A’ good strategy is to ensure that ‘no’ module nication contains . “tramp data”. In Fig. above :students address, course are examples of tramp data that are. arily communicated between: modules. By ensuring ~ that modules communicate only, dependency is’ mi Nt 2. Stamp ‘C ing 2. Stam module A ahd B when: complete’ data’ st r, Since. not all, structure ‘are usually necessary ‘i ¢ modules. stamp .coupling typically\involy procedure only needs a part of, a data structur should, pas8 just t part, : ot. the co apleti } 8. Contro! said to be control ‘coupled of contro} informatios:. ans of flage ‘the’ dependent ‘This is is basically ated : i ‘ternal tools and devices. . ; : i which -access that data t¢ rea io the: -\éommon_ coup) ig, ite: having module is responsib! for, Increment V1" “Module Z. Fig. : Example of ommon | coupling “Module X module A changes data of moa Boo branches into D, control of C.” ‘ig. : Example of conent coupling | Q. 12. Describe the various strategies of design ? Which design strategy is most popular’ and pr: x0 one) plan is chalked out to find implementing the intended\sdlu There are multiple ny: study them briefly % 4 ear L NOS : Structured design is a conceptualization, of problem into several well-organized clements of solution, 4s \basically concerned with the solution design. Senent of structured. 1.18, It: gives better, undeness Ss how the problem is solved. Structured ign..also makes it simpler for designer,to conce! problem more accurately. Y 4 Structured design, mostly | ‘based o am -gonquer’ strategy where a problem is broken into. galt ca | Lpreblems and each small problem is individually. solved ‘un e whole problem is solved. 1 ead by. ea oF The small’ pieces. of problem; are, .60lv leans solution modules. Structured design phasis. i es be well organized, in order ei ‘precise ‘These modules aré arran with each other. A A good natter and program/functions work, ‘on’ input ‘rather than ona ‘tate. Design Process : (a) The whole Sun is seen. as how ata flows in the system by means of data’ flow (b) DFD flepices how functions canes, data’ itire system. | state of Th ON ee. oelitally broken down into: smalier as functions on the basis of their operation in ‘the “\@) Bach function is then described at large: 3. Object Oriented Design : Object oriented design’ works around the entities and their characteristics instead’ of functions inv in the software system. This design strategies focuses on etitities and its characteristics. The whole concept of software m: revolves around the engaged entities. a us “see the. impor telat concepts ‘of, Object Oriented Te ‘Objects : All entities involved’ in the solution design are: ‘known as objects. For example, ‘person, banks, company . and customers are treated ‘as’ objects. Every entity ha3\some ciated to it and has some nethods to perform on (b): Classes + A clase isa object. ‘An’ object is an ‘instance attributes, which an ‘object..can haye defines the functionality of the “object, \ In‘ the ; solution * design, attribute: are storéd. as variables and - functi alities'\ are defined means, of. methods or OD, the attributes (data variables) the data), are bundled together is ical manner where’ thé lower or sub-classes can import implement and ‘re-use ‘allowed variables and methods from their immediate super’ classes: ‘This property of OOD is known as inheritance; This makes’ it’ easier toa define specific class and to create’ generalized’ classes from‘ specific ones. (e) Polymorphism : OOD languages provide a mechanism where methods performing similar tasks but vary in arguments, can be assigned same name. This is’ called polymorphism, which allows a single interface performing tasks for different types. Depending upon how the function is invoked, wepernve Portion of the cvde gets executed.” Q..1, Explain the Design Principle. Ang... 4, Design Principle .. ; ‘The design ofa system is correct if a system built precisely according .to the design satisfies the requirements of that system. Clearly, the goal during the design phase\is to produce correct designs. Howéver, correctness is not the sole criterion “during.the design phase, as, there’ can be many correct designs. ‘The ‘goal. of ‘the design process. is not simply to produce a design for the’ system. Instead,. the goal is. to find .the best < possible «design; within the. limitations imposed by the requirements: and the. physical. environment in which ave ‘to: specify: some” for), evaluation. Idi ‘A design’ should ‘clearly be Yerifial all the specifications), and trateable (. traced to. some: requiremet 8 evi properties that con r _Efficiency of any scarce resources ‘by due ‘to cosh, €OnSiderations.. If some. resources ‘are .s itis‘desirable that those resources.be uscd efficiently. : r systems, the resources that. are most often consid: red ‘for. efficiency are processor, time and memory. An ep yen is one that consumes less processor time and requires less memory. In earlier days, the ehicient use of CPU and memory was important due to the high cost of hardware. Now that the hardware costs ‘are low compared-to the software costs, for many software systems traditional efficiency concerns now take a back seat compared to other considerations. One of the exceptions is real-time systems, for which there are strict éxecution time constraints... Simplicity 1s: perhaps the most. important quality criteria for software systems. We have seen that maintenance of software is usually quite expensive. Maintainability of software is one of the we have established. The design of a system is one of the most factors affecting the maintainability of a system. During tenance, the first step a maintainer‘has to. undertake is to ‘understand the system’ to be maintained. Only after.a maintainer thorough understanding of the different modules of the system, they are interconnected, and how modifying one will affect the others’ should the. modification be undertaken. A simple and “understandable design will go a long way in making the job of the taines asier. 5 to increase efficiency of a system result in making the System rs compler. ‘Therefore, design decisions frequently:invglve trade- designing is fundamentallya re activity, it cannot be reduced nebe that, can be simply: followed, sponge guidelines . Of: introdut ing ‘errors duis design. The principles form the: basis for most’ of the design methodologies. noted ‘that the principles that can be used in design those used i in problem analysis. In fact, the methods because in both: analysis and design we are essentially. of | the problem domain, while in design we are constructing a model for the solution domain: Second, in: problem analysis, the analyst has limited degrees of freedom in selecting the models as the problem . is given, and modeling has to r>present it. In design, the designer “has a great deal of freedom in deciding the models, as the system *the designer is modeling does not exist; in fact the designer is creating a model for the system that will be the basis of building the system. That is, in design, the system depends on the model, while in Broblers analysis the model depends dinted out earlier, the basic aim of 1 lysis is to understand, while the: optimize though ivities (in our case, simplicity'and the basic principles and techniqui ne Q. 1. What ‘do you (by, BOnEWar SENG Ae: Vip tca hal balay thy Ans. Software ‘Maintenance ; sdk Software maintenance is widely accepted part of SDLC now a - days. It stands for all’ the modifications and updations lone after the delivery of software product.’ There ‘are number f reasons, why modifications are réquited, some of them are Tiefly mentioned below. : ice ae (1) Market Conditions ': 'Policies}‘which. changes over the me, such as taxation and newly introduced constraints’ like, ow to maintain bookkeeping; “May trigger need for modification. (2) Client Requirements : Over ‘the’ ‘time, ‘customer may sk for new features ‘or functions in the software. js) (3) Host Modifications : If any. of the. hardware aiV/or atform (such as operating system): of. the target host ‘changes, ftware changes are ‘needed to keep adaptability, ‘Nw (4) Organization Changes : If there is any ‘business level ange at client end, such as Teduction of.organization strength, quiring another company, organization, v turing into new siness, need to modify in the original software may arise. Q. 2. Explain different types hmaintenance. ' (2016) Ans. -. Types of Mai ance ht 8 ‘ In a software lifetime, typelof' maintenance may vary based its nature. It may just, a routine mainte: 3 ne bug discovere (1) Corrective Maintenance : 'This includes modifications l updations done in order to correct or fix problems, which either overed by user or concluded by user’ error (2) Adaptive Maintenance : | This includes modifications updations applied to keep the software Product up-to date tuned to the ever changing world’ of technology and ‘ness environment, : i : : (3) Perfective Maintenance : This includes modifications updates done in order to keep the software’ usable over period of time. It includes new features,: new user irements for refining the software and improve its reliability performance, Teele ee ence. >i mis includes moaiications ns.to. prevent future problems of the, software. It. tend: problenis, ‘which ‘are not significant at this may (cause serious issues in: future, “Types of Software Maintenance - Proventve. = Corrective yare product | continues through ‘maintenan ‘efforts Therefore, it can be ‘software maintenance, is, needed to correct. errors. features, port the software to new: platfc rms. etc. 4. Explain | the’: problems. x associated with maintenance. . ‘ ‘Ans. Problems Assodilited with Software Maintenance ‘Software maintenance work typically is much more expensive than what it should be and takes more time than required. In software organizations. maintenance, work is nostly carried out hoc techniques. ‘The primary reason: ice is one of the most’, neglected, ‘areas of software . Eventhough software maintenance i is fast becoming an important area of work for many companies a8 Ue soltwan, products of. yester years age, still software maintenance j, mostly being. carried out as fire-fighting operations, rather thay through systematic ‘and planned. activities. ee Software maintenance has a very poor image in industry, Therefore, an organization. often cannot employ bright engineer to carry out maintenance work. Even though raaintenanc suffers from a poor image, the work involved is often more challenging than development: work. During maintenance it jg) necessary to thoroughly understand someone else's work and then carry out the required ‘modifications and extensions. ‘Another’ problem associated || with maintenance work ig that the majority of software products needing maintenance are legacy -products.; i RAGS Sy Q. 5. Explain: the. factors on which software maintenance ‘activities depend ? { PAS AN, Ans. Factors on which Software | ES "Activities Depend , The, activities involved in a. software Maintenance project are not unique and: depend on, sev factors such as: (i) :the extent. of modification to the. product required (ii). the resources available’ to, ‘thi maintenance team : Gi)’ the conditions \ of ‘the, existing _product:\(that is how structured it is, how well documented it is,ete.) (iv) ‘the ‘expected!"prajett risks, ete. 9 = D eded to a software product’ are minot and straightforwe e code ‘can’ be’ directly modified. and the changes (apppropri tely reflected in‘ all the documents. But elaborate activities are required when the required changes are not, so ‘trivial. Usually, for complex maintenance project for stems, the software process can‘ be represented by 4 yerse engineering cycle. followed by a:forwared engineerin eycle with an emphasis on as much Teuse,‘as possible from th¢ existing code and other documents. -~ SIS = Q. 6. What is Software Re-engineering, ‘ Ans. Software Re-engineering When we need to update the software to keep it to th? current market, without impacting ite functionality, it is calle! software re-engineering. It is a thorough process where th? design of software is changed and’ programs are re-written.

You might also like