0% found this document useful (0 votes)
68 views

Unit 1 (OOSE)

Object oriented software engineering lesson-1

Uploaded by

Ashni .P.k.
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
0% found this document useful (0 votes)
68 views

Unit 1 (OOSE)

Object oriented software engineering lesson-1

Uploaded by

Ashni .P.k.
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/ 27
‘SUBJECT CODE : CCS356 Striclly os per Revised Syllabus of _ANNA UNIVERSITY Choice Based Credit System (CBCS) Semester - VI (CSE/ IT / CSaBS) OBJECT ORIENTED SOFTWARE ENGINEERING Mrs. Anuradha A. Puntambekar ME. (Computer) Formerly Assistant Professor in PE.S. Modern College of Engineering, Pune >°TECHNICAL PUBLICATIONS ‘An Up-Thrust for Knowledge (& scanned with OKEN Scanner SYLLABUS TABLE OF CONTENTS object Oriented Software Engineering - [CCS356] UNIT SOFTWARE PROCESS AND AGILE DEVELOPMENT. Be am Chapter -1 Software Process and Agile Development (1-1) to (1-46) i icering, Software Process, Perspective and Specialized Process Iroducton to Software Engineering, aes eecialine Pr 1.1 Introduction to Software Engineering. ily ~ Agile process-Extreme programming - XP Process» Case dee ‘Modes -Inireution to Agility ~Aaile pr programming Case LAA Defining Software 4-2 Sy (Chapter) 112 Software Characteristis, 1-2 UNITIL REQUIREMENTS ANALYSIS AND SPECIFICATION AotS. Ciunodes of satay ~ . veh 1.2 Goals and Objectives of Software 1s Requirement analysis and specification ~ Requirements gathering and analysis ‘Object modeling using UML - Use case Model - Class diagrams -Interaetion diagrams it | Larered Techacie a5 “Asivitydagrams -Stte chart diagrams - Functional modelling - Data Flow Diagram - CASE 15. Software Process. : i 7 17 1152 Capability Maturity Mode (CMM) aie UNITI] SOFTWARE DESIGN 1.6 Prescriptive Process Model. 19 Software design - Desipn process - Design concepts - Coupling - Cohesion - Functional 16 Need for Brose ails a ad Independence - Design paiterns ~ Model-view-contrller - Publsh-subscribe ~ Adapter ~ 182 vol 7 wns =20 ‘Command - Strategy - Observer - Prony ~ Facade ~ Architectural styles Layered - Client 163 income en s - ign -Case Study. (Chapter ~ 163.4 Incremental Model Sens Tie Pipa fier User inert esan Case Sty. (Chapter 3) ust ama 7 - IV SOFTWARE TESTING AND MAINTENANCE 1.6.4 Evolutionary Process Model ei Prot Unit testing - Blackbox testing - Whitebox testing -Intewration and System testing 1.642 Spal Node. 11643 Concurrent Development Mode. ‘Specialized Model. 4.7.1 Component 1.72. Formal 173 © scanned with OKEN Scanner 1.10.2 Process sisi Se 1-06 1.10.3 Industrial XP. anvensnvessnnessennans 1-39 1,11 Two Marks Questions with Answers.. Chapter-2 — Requirements Analysis and Specification(2 - 1) to (2- 178) 2.1 Introduction to Software Requirements............. meee 2-3 2.2 Functional and Non Functional Requirements... 2-4 2.2.1 Functional Requirements. 2-4 2.2.1.1 Problems Associated with Requirements 2-4 2.2.2. Non Functional Requirements. 2-5 2.2.2.1 Types of Non Functional Requirements 2-5) 2.2.2.2 Domain Requirements 2-7 2.2.3 Difference between Functional and Non Functional Requirements 2-7 2.3. Requirements Engineering Process 2 2.4 Feasibility Studies...... 2.5 Requirement Gathering and Analysis. 2.5.1 Stakeholders a eonee 2.5.2 Requirement Elicitation and Analysis Process. a 2.5.3 Requirement Discovery .. 2.6 Software Requirement Specification. 2-26 2.6.1 Characteristics of SRS 2-29 2.6.2 Example of SRS 2-30 2.7 Formal System Specification 2-44 2.7.1 Concept of Formal Technique... . 2.7.2. Merits and Limitations of Formal Methods = 2.7.3. Model-Oriented Approach and Property-Oriented Approach... & 2.7.4 Axiomatic Specification... a 2.7.5 Algebraic Specification... 23 2.8 Finite State Machines... 2-50 2.8.1 Formal Definition.. 2-51 2.8.2 Representation 2-51 2.8.3 Types of Finite State Machines, send = 52 2.8.4 Applications of Finite State Machine... sn 2~52 wi (& scanned with OKEN Scanner UNIT I Software Process and Agile Development Syllabus Introduction to software engineering, Software proces ective and specialized process models, Introduction to Agility, Agile process, Extreme programming, XP process. Contents 1.1 Introduction to Software Engineering 1.2 Goals and Objectives of Software 1.3. Difference between Software Product and Program 1.4. Layered Technology May-22, Marks 7 4.5 Software Process. DeC-10,17,22, errr Marks 7 4.6 Prescriptive Process Models May-05,06,09,15,16,17,18,22, Dec.-06,09,11,16,17,19, De6.-20,22, renee Marks 16 Dec.-13,14,15,17, May-16,19, Marks 16 oDec.-16,19, May-19, .........Marks 4 May-19,22, Dec.-20,22, ...... Marks 13 (& scanned with OKEN Scanner 2 ri sotwore Engineering _1 otware Engineer" a Ze “software does nat ware out vary tage of hardware development process he rate is very high because Feats the faihure rate Bet 1d again it starts reduced dusts and Fpatich theories, methods ord tools are o in “plied i) of manufacturing defects. But after correcting ‘such def matic and organized approach i ad0Pted, Base wear cate remain content for some perio Of UE ani ‘3 yg because of environmental maladies (extreme temperature engineering Me erect cme dee TO sbrations) Tein of twee based on two terms 5 om he other hand software doesnot get fete Rt such environmental maladics tothe problem an Engineer appli oe eal t should have an “aie cae”, Bat 006 ome undiscoveres ies appropri Hees ature ates high and drops down a soon 2616 S078 gt corrected re the “actual cure” sas shown Below Hence in failure rating of oftwa «Discipline: For fing the solution ie Wn ing te tos, ETT ink : se di in oe SNS D Fanon nse asin the scltion. 1 Ponda The stare product gets developed afer lloing systematic th retnds an nls alor wit the appropriate management activi EEK] efining Sottware xa nating colon of ompate Ba and elated doce cman tie ee tres fnctonaltes and beter performance. eae Satae otis mayb oe : a i . i cI EConstant faire period | for a single customer according, to their ‘can return to original steady state becomes high. changes in software cause it for software © scanned with OKEN Scanner | wae eee a ema puiltratherthan being assembled from componeny, | cnet Overt Sotare Enron 1-5 Sotware Process and Ale Development 4 Mast software is ustont i ct firstly the circuit design wi sia Inseltigen Sere : «ie developing any ancware proguc Sy with dg) + Aili Intelligence software - This kn of stare iste on Knowl based expert systems. Typically, this software is useful in robotic, expert systems functioning properties e es and rezitad Jmage and voice recognition, artifical neural networks, theorem proving and game Nee eee ene eee enn a aan eonting wo ie design, but ti isnot done while veloping sop, 8 ; product © Mesto the sfewareis custom built. fo onthe sftare development approach i getting changed and yay, | 1, Who he mpc! of resol in soft develpment process? 2. Writea noteon the wngue characters ofa softuare rs ying. However, format of sofware capone «Wisp reuse lit and data str, = aca of sabe crponei BE conts and Objectives of oftware cite te seuatiecorpenena si] Wile developing software flowing are conion sects Sth 4. satisfy users requirements - Many programmers simply don’t do what the end ments. Hence it becomes a5 message windows, pull down menus and many more such componenis. Te approach is geting developed t0 use in-built components in the softwaee. Thy user wants because they do not understand user requit stream of software i popularly known as component! einer. ssary to understand the demand of end user and accordingly software should FEEL categories of software be developed eas eee 2. High reliability ~ Mistakes or bugs in a program can be expensive in tems of Fernie ay situation for which a predefined set of procedural steps. ‘and customer relation, For instance, Microsoft has faced many sed on © complex growth of software it can be classified {along categories, ious + Syem software - tis colt ae ‘of programs written to service other programs Jhuman lives, mo: problems because earlier release of windows has many problems. Thus software should be delivered only it high relly is achieved Typiat programs in 3. Low maintenance costs - Maintenance of software is an activity that can be done this category are compiler editors and assemblers, The Purpose only after delivering the software to the customer. Any small change in software ‘ofthe system softwares to esablish an communication with the hardware. should not cause restructuring of whole software. This indicates that the design of 4 Bf software has poor quality. me on which the software 4. Delivery on time - Ibis very r software can lead to meet the be cost effective. © scanned with OKEN Scanner snare Process and Age Developmen, xe Omi SotvonEmprerg_1:£___SSDSES Monet vented Stare Engireomy 4-7 [EDDiterecenenveen SorareProductand Progam __ Ef software Process ‘se. No ‘Program a Software product fa en a i nat in develope Softoare process can be defined asthe structured set of actos tat are required Wo develop eS ee eee rand sed by ge noc | thesofuare sae. delay eS rat The fundamental activities are a ee oe Ss er Ten at stone oe Z wogram cades related documents uch a cific ‘+ Design and implementation | cases a ee oe > Steere See ee ee description of a process from some particular perspective. Common Process Framework fea | Dre proces iamevork'neqied excgumenting be coe eae — Ee cree a eee ae FEE] Layered Technology a = © ome syed nay Ay ste = ea nts dane! gts neal pps ata (oe 2 layer, process layer, methods layer, tools layer. = Misiones} | Testoet ‘et Se patos methods layet, tools lay Quality management [SQA points a © Aco gully mgmt isin tx LEE] eee Fa tasted ae : a As ston in Fig 15 he tas ps ce y es rennin ean nal finpennan ai on ithe f | nace aac testing peters) ee ey conmuct and Process framework activities ‘= By communicating customer requirement gathering is done. + Planning ~ Establishes engineering work plan, describes technical risks, lists ‘work products produced and defines work schedule. + Soviet reed ring stomata sf deepen pen “Tag stan eehering b+ snbitono development of quality software. pola or =< «Modeling Te software modes prepared by 1._Softere engineering isa layered approach | Analysis of requirements eee lati: [ou Naszz Nate] ia ? ” eee TECHNICAL PUBLICATIONS® » an yp-teust for knowledge . ali — | © scanned with OKEN Scanner = :’ 9 18 star Process. and Age Doelpmag age crete Sate Ergon ppt intoa code by ‘Construction ~The software design is mapped int ‘= Code generation ai omer evaluation and feedback jg) «Deployment - The software delivered for custome obtained ae “Task sets - The tsk set defines the actual work done in order to achieve the software bjectve. The tack set is used to adopt the framework activities and) project team, requirements using ‘= Collection of software engineering work tasks 1+ Projet milestones ‘Software quality assurance points ‘Umbrella activities ~The umbrella activities occur throughout the process. They focus on project manageme 1. Software project tracking and control - This is an activity in which software team ‘an assess progress and take corrective action to maintain schedule. acking and control. The umbrella activities are 2. Risk management - The risks that may affect project outcomes or quality can be analyzed 3.Software quality assurance - These are activites required to maintain software guality. 4. Formal technical reviews - Its required to assess engineering work products to uncover and remove errors before they propagate to next activity, 5. Software configuration management - Managing of configuration process when any change in the software occurs, 6. Work product preparation and production documents, logs, forms and lists are caried out 7-Reusability management It defines criteria for work product reuse 8. Measurement The activities to create models, In his activity, the process canbe defied and coleted Project and product measures ae set ass the soft ea nels tn required software, : WEB cpabitty natrity Mose (ce * Te Stare Engin insite SED hs doe neta mode emphasing process atu softrarecpalitis tha snd be ‘eas of proces aps and mature peda comprehensive process ty Its predicated on a set of system and resent when organizations reach different "HRCA RBLCAT ON mastic rect Ototed Sots Enghoeag 1-9 Stare Process and hgle Doelopment ‘« The Capability Maturity Model (CMM) is used in assessing how well an ‘organization's processes allow to complete and manage new software projects. «+ Various process maturity levels are Level 1: Initial - Few processes are defined and individual efforts are taken Level 2 : Repeatable - To track cost schedule and functionality basic project management processes are established. Depending on earlier successes of projects with similar applications necessary process discipline can be repeated. Level 3 : Defined - The process is standardized, documented and followed. All the projects use documented and approved version of software process which is useful in developing and supporting software. Level 4: Managed - Both the software process and product are quantitatively understood and controlled using detailed measures Level 5 : Optimizing - Establish mechanisms to plan and implement change Innovative ideas and technologies can be tested. ‘Thus CMM is used for improving the software projec. Explain the CMMI model to access the organization eel eee) Discuss in brief about the typical activites involved under umbrella activities in software gineering ey Prescriptive Process Models Definition of Process Model : The process model can be defined as the abstract representation of process, The appropriate process model can be chosen based on abstract representation of process. ‘The software process model is also known as Software Development Life Cycle (SDLC) Model or software paradigm. ‘These models are called prescriptive process models because they are following some rules for correct usage In this model various activities are carried out in some specific sequence to make the desired software product ‘Various prescriptive process models are~ ‘EOMICAL PLBLEATIONS® ww oe ie © scanned with OKEN Scanner stare Proce ad Agile Develo = Tener] [ Evoutonan, Warerel | | process mogel| [Process model tnerenta Praying LL promaier = Sealed L_ conasret Boveloent ede Fig. 161 Prescriptive process mode EI Nees for Process Model The software development team must decide the process model that isto be used for software product development and then the entire team must adhere to it. This necessary because the software product development can then be done systematically, Esch team member will understand - what is the next activity and how to do it. Thus process model will ring the definiteness and discipline in overall development process. Every process model consists of definite entry and exit criteria for each phase. Hence the transition ofthe product through various phases is definite. Ifthe process model is not followed for software development then any team member can perform any software development activity, this will ultimately cause a chaos and software project will definitely fail without using process model, itis dificult to monitor the progress of software product. Let us discuss various process models one by one. ‘+ The waterfall model is also called as Tinear-sequenti ‘model or ‘classic life cycle ‘model, It is the oldest software paradigm. This model suggests i sequential approach to software development, * The software development starts with ‘Progresses through analysis, desi figure illustrates waterfall mode a systematic requirements gathering phase. Then ign, coding testing and maintenance, Following * In requirement gathering and analysis phase sms be anes manasa he basi requirements of he stem {information domain, function, beha ‘engineer, who is also called Analyst. The _ aly wioural requirements ofthe system are Conect Oren Software Enghewrng 4-44 Fig, 1.8.2 Waterfall mode understood. All these requirements are then well documented and discussed further withthe customer, fr reviewing. ‘+ The design is an intermediate step between requirements analysis and coding. Design focuses on program attributes such as = + Data structure # Software architecture Interface representation Algorithmic details, ‘The requirements are translated in some easy to represent form using which coding, can be done effectively and efficiently. The design needs to be documented for further use ‘Coding isa step in which design is translated into machine-readable form. If design is done in suficient detail then coding can be done effectively. Programs are created in this phase, ‘Testing begins when coding is done, While performing testing the major focus is on logical intemals of the software. The testing ensures execution of all the paths, functional behaviours. The purpose of testing isto uncover errors, fix the bugs and meet the customer requirements, ‘+ Maintenance isthe longest life cycle phase. When the system is installed and put in practical use then error may get introduced, correcting such errors and putting it in tuse is the major purpose of maintenance activity. Similarly, enhancing system services as new requirements are discovered is again maintenance of the system. “This model is widely used model, although it has many drawbacks. Let us discuss benefits and drawbacks. TEONCAL LEAT fat lamas TRA RATION mes ae A © scanned with OKEN Scanner i = ject rte Soar Enews Benefits of waterfall mode ols simple toi 1 sofware Process and Apie Development development of the fllowing gers to find time and other information fom tite functors 1) University accounting system the software dev in developing the account systems then build Fig. 1.6.3 The incremental mode! this release the basic requirements are \crements new requirements are added. incremental model progressive functionalities are obtained with each release. TECIICAL PLBUCATIONS® a uptime ee | (& scanned with OKEN Scanner P a ect Cried Sofware Enginerng nen to choose it? 1. When requirements are reasonably well-defined rt suggests a purely linear effort 2. When overall scope ofthe development effor 43. When limited set of software Functionality needed quickly. Regurements ‘peer Merits of incremental model 1.The incremental model can be adopted when there are less number of people involved inthe project. 2. Technical risks can be managed with each increment. aoayss rapa 43. Fora very small time span, atleast core precuct can be delivered to the customer. HEEB rece! + The RAD Mode is a type of incremental process model in which there iextremely short development cycle. + When the requirements are fully understood and the component based construction approach is adopted then the RAD model is used. ‘+ Using the RAD model the flly functional system can be developed within 60 to 90 ae He [+ e100 dayepenos ——+} * Various phases in RAD are Requirements Gathering Analysis and Planning, a1 64 Rare Desig ald or Coercion an ly Erle seria mal soncage ‘+ Mulple teams work on developing the software system using _, Drawbacks of rps application develope Pa Pe 3 1. It requires multiple teams or large number of people to work on the scalable ‘+ Inthe requirements gathering phase the. Tes aie snes process and requirements ofthe software Sar 4. The projects using RAD model requires heavy resources, * During analysis and planning phase, the analysis on the ga rements is, Oe ast, the analysis on the gathered r gathered requirements is Imadeand pling for varios satwaredevelpmetartmer During the desis as€ variou: = ing te design phase varius models are created. Those noe ve Basins ‘model, data model and process model, — Set 4 The build is an avy in whch using he automo gerrtion a the npc 4.1f there is no appropriate modularization the be problem to such projects. ing RAD model find it difficult to adopt new technologies. existing software components and tion code is created for the software | Solution : The RAD model is suitable for information system applications, business tem, This cde is we z see ll ested by its team. The functional 9 following reasons ~ teams are integrated to form a whole lities developed by all the applications and the for systems that can be modularized because o Fina it uses very short dev ew. the deployment ofall the software com 1. This model is similar to waterfall model but it ry short development cycle. ‘working onthe projet scarred out Ponents (created by various teams 2. Ituses component-based construction and emphasises reuse and code generation ee TOMEI RaCERTER wise a ? RC wae mmagg RATT a SS © scanned with OKEN Scanner _ a coe ree Soto Engontng_1- 1 — Jon scaleable projets 43 This model uses multiple teams ee . “L-The RAD model is suitable forthe projets where echnical risks al 5, The RAD model requires heavy resources. sftare projets hat would be amenable '0 j Solution : There can various examples of software projects that would be amenable to incremental model, For instance ~ 4. Banking software service: This service can be personal banking system the incremental model can be uses Increments, this system can implement insurance service, home loans and some other features of banking services, 2. Web browser application: The base application can be developed and distributed, ‘Thisis the basic increment ofthe application In he later increments the plugins can be provided to enhance the experience of web browser applications. 43. Operating system software : The operating system software providing the basic system handing. functionaiis isthe frst increment, After the release ofthe basic versions then updates or security patches are provided to the customer in the form, of increments. Various distribution package in the form of versions such as basic home edition premium, ultimate and so on can be the increments of operating personal service. That means for 1d. In Tater state of system software Evolutionary Process Mode! While developing the sofware systems i soften ned to make mxifcations in tater development phases or the tasks sets, the development process inca on ‘gh ine (rom requirments gathering to deployment then te ent pdt wil be eli; In such cases, he iterative approach nest be adopted. The evatonary ‘process model is iterative model, 4 HEE Frcypig + Inprototyping moe inital the reuirement gah * Developer and customer define overall objectives; identify areas needing more requirement gathering. a + Then a quick design is prepared. This desig represen Tis lesign represents what willbe visible to user + From the quick design a prototype is c r rotolype is prepared. Customer or user evaluates SIL tomer cequiemens, Thus prototype is importany a identity the | ; | ANCA PLRUEATION wpa ing is done, sonar Process and gio nanal reed Sotar Engen ist Onered Soto nacety __1-17 _sotvore snes and Ap Derloent | Conmncaton |___ ie csome [-————>| ooo Pepeyment a eney” |__| eamcson me — seek prope Fig. 1465 Protayping + When working prototype is built, developer use existing program fragments or program generators to throw away the prototype and rebuild the system to high auality + Certain clases of mathematica algorithms, subset of command driven systems and other applications where results can be easily examined without real_ time interaction canbe developed using prototyping paradigm. When to choose it? + Software applications that are relatively easy to prototype and that always involve Human-Computer Interaction (HC), the prototyping model is suggested, ‘+ A general objective of software is defined but not detailed inpat, processing or ‘output requirements. Then in such a ease prototyping model is useful * When the developer is unsure ofthe efficiency of an algorithm or the adaptability of ing system then prototype serves as a better choice, Drawbacks of prototyping 1. Inthe fist version itself, cstomer often wants “ew fixes" rather than rebuilding of the system whereas rebuilding of new system maintains high level of quality. 2. The ist version may have some compromises. 3. Sometimes developer may make implementation compromises to get prototype ‘working quickly. Later on developer may become comfortable with compromises and forget why they are inappropriate. © scanned with OKEN Scanner The development team with less domain Knowledge can be accommodated due to iterative nature ofthis model. The change in technology in the later phase can not be tolerate. All the endisers need not be involved in all the phases of development There is no use of reusable components in evelopment proces This model possess the iterative nature of prototyping model and controlled and systematic approaches ofthe linear sequential model «This model gives efficient development of incremental versions of software, In this ‘model the software is developed in series of increments. + The spril model is divided into a number of framework activities. These framework tivities ae denoted by task regions. + Usually there are six tasks regions. The spiral model is as shown in Fig. 1.656. (Gee Fig, L660 next page) + Sjaral mode! is realistic approach to development of large-scale systems andl software. Because customer and developer better understand the problem statement. at each evolutionary level. Also risks can be identified or rectified at each such level ‘In the initial pass, product specification is built and in subsequent passes around the spiral the prototype gets developed and then more improved versions of software gets developed. *+ During planning phase, the cost and schedule of software can be planned and ajusted based on feedback obtained from csomerevaluation + In spiral model, project entry point axis is defined, This axis re eae rors « presents starting * Fer stan, concept development projet will start at core of spiral and will ‘patinwealong the spiral path If the concept has tobe developed ino actual projet ‘tent Point 2th product development proces stars, Hence etry ECHUCA PUBLATIONS®- apt jot Onn Star Enginering 119 Setar Process ard Age Deeopment Planing Pak arts cuter ERB Project ety | ponte “Constucten Snaelase custome evaluation ‘and Teadbace Fig. 1.8.6 Spiral model point 2s called product development project entry point. The development ofthe project can be carried out in iterations. ‘© The task regions can be described as : 4) Customer communication - In this region, itis suggested to establish customer communication. {i Planning - All planning activities are cared out in order to define resources Hime line and other project relate activities si) Risk analysis - The tasks required to calculate technical and management sks are carried out. © scanned with OKEN Scanner inte apliation are conducted. Some [aks hat re requited to prog; tier support are also carried out in this task region tomers feedback is obtained and based 4) Customer evaluation ~ Cust ooe red and implemented customer evaluation required tasks ae perfor installation tage «tn each region, number of work tasks are caricd out depending upon if Coracerisics of projet Fr a small project relatively small number of work tagy reaoptd bt fora complex project large number of work tasks canbe carried yg In spiral model, the software engineering team moves around the spiral in clockwise direction beginning at the core. ‘Advantages of spiral model + Requirement changes can be made at every stage. ‘+ Risks canbe identified and rectified before they get problematic. Drawbacks of spiral model ‘+ 1tisbasd on customer communication Ifthe communication isnot prope then the software product that gets developed will not be upto the mark + It demands considerable vsk assessment. If the risk isd assessment is done proper then ony the succesfl product canbe obtained, 1 When to chose t? 1 When the prototypes fo the software functionality ae need, 2 When requirements are not very cleasy defined ox complex. 3. When the large or high budget projects need to be developed 4. When the risk assessment is very critical an essential TEBE concuren development ode! 5 When projects not expected within a specific inte time span ‘The concurrent development models also call as concurrent engineering, ‘© In this mode, the framework activities or software development tasks are represented as states. + ‘The modeling or designing phase of software development can be in one of the states like under development, rsiting for modification, under revision ox under review and so on Fig, 1.67 represents these states. \ Teoh — ARATE ep nai recs “EECA POBLEATIONS® ep hc : © scanned with OKEN Scanner ener in net Pt ma lel but these! transition from under © scanned with OKEN Scanner (bjt Onentes Soware the migation pres is required In this migrating process fllowing steps need toy followed - 1. Analyze the data. ; 2. Extract the data which isto be transformed. 3. Transform the extracted data 44. Validate the transformed data. 5. Load the validated data to the target system. These above mentioned steps are repeated until the migration is. successfully ‘completed. The risk management must be done properly. All these factors suggest that the spiral model is suitable forthe given project. te __.| Solution: 1. RAD model would be applicable and not the waterfall model Following are some scenario where RAD model would be applicable and not the ‘waterfall model. A) The projects in which users ae involved in all phases. 1B) The projects in which users are experts of problem domain. (©) The project is enhancement of existing syster. 2 Waterfall model is preferable to all other models : In the following scenario waterfall model is preferable to all other models. ‘The project for which requirements are easily understandable and defined, rented Sonwere EPO) _1-25 __satwar Pes ad Ape Deora 4. The spiral model demands a direct consideration of technical risks at all stages of project The risks are reduced before they get problematic Solution : The RAD model is suitable for information system applications, business applications and the for systems that can be modularized because of following. reasons = 1. This model is similar to waterfall model but it uses very short development cycle. 2. Ituses component-based construction and emphasises reuse and code generation. 3, This model uses multiple teams on scaleable projects. 4. The RAD model i suitable fr the projects where technical risks are not high. 5, The RAD model requires heavy resources. | Discuss the | Solution : “This model is based on commen four activites analysis, design, code and testing, “The software development proses canbe deny and systematically defined in phases ‘Customer interaction s possible in every sag ‘software development proces in this model Targe sale projects can be handled using | approach. ‘Solution : When software engineering team moves around the spiral, the fist circuit © scanned with OKEN Scanner eres = = eee, tert ___‘sin seh gato ae stich cms tober spl ad hector is Dex ei a Rater in whe is a ik acs al Fro mre a Teac iepent? Solution ce tner quent] rodel ra water models PprOPAte WHEN @ SMP” sae oytoyping model during the ft proto sl. the custome fen wants projet has tobe developed with already known requirements Fea tines iter Get ae ee ‘Waterfall model -Refer section 1.52 2,Sometimes developer may make implementation compromises to get prototype working quickly. But later on the developer may become comfortable with ea ee Te aniteniy ny recor ‘organization. A client approached you fora softoare solution. The problems sa model is mainly based on customer communication. If the Te i encri ih od os Ft tpel n a etppr tn rept at fe deep j ‘model you will suggest for this project — justify. Explain that model with its not be up to the mark. Solution : The uncertainties in problem statement leads to risks inthe projet. Hence the a eT a spiral model can be used for development of such projec EERE Wie proces nat? Drie eprom hou onl ha Spiral model - Refer section 1.642 nanfacture car Explain by giving suitable reson. = | What is the role of user participation inthe selection ofa hfe cycle model? Solution : Process model : Refer section 1.6. The process model that can be used for car manufactures spiral model Slaton: Due to users paricpation ther understanding abou the project or sytem increases. Following are te ssusthat depict the role of ser paripaton in selection of Reasons lifecycle model T)this is a model in which risks can be idenified and rectified before they get L.Prottype model and RAD model are the life cyde mode in which user walvement is expect inal the phases. 2. There is no user involvement expected inal the phases of waterfall, spiral model and evolutionary development made 3.The waterfall model, spiral mode, iterative enhancement model or evolutionary 4) This mol is good fr large systems. ee ee 4) Spiral model, i) Rapid application development model ‘anne ‘users must be experts of problem domain. They should understand the system. Spiral model: Refer section 1.64.2. problematic 2)The iterative framework of this model helps in evolutionary stage. 3) The required changes can be made at every stage: analyzing the problem at every properly wellin advance. Diese proatyping model What the eet of designing «roe 6 For the selection of waterfall mode, its mot necessary thatthe user has expertise of the sata projet? problem domain. ad 2 Whi proves mel est suited or isk managment? Discus ns tal meg ie the adeantages and dsadeatage ofthe mel Give the adeantag re is 4 What is the ignifcance ofthe spiral mal ohn compared ith ther 2 Explain how stare pres model st ick manageent Expl he moe Fe themed ss ag te tt ise la alt irre gy 7. The prototype iterative enhancement model, spiral model and Evolutionary model can be ane by the users having no previous experience of participation in 8 For selection of waterfall model and prototype mode ‘ the users must have Pattcipated easier in similar type of projects a ma a ECA RRLEATONE men er © scanned with OKEN Scanner ‘Software Procoss and Alo Dovey (nyc Ont Stare Engr) 120 & Outline the apr if cycle model with agra 7 Campane and contrast weal mod pial model and erative mode Oe CURL, 4k cus bout the eal model and spiral model with aoantage and disadvantages LAL HB Specializes Mode! (URDERTATATATAL STONY, The specialized models are used when only collection of specialized technique methods are expected for de ‘Various types of specialized models are oping the specific vftware 1, Component based development 2. Formal methods model 3. Aspect oriented software development Let us discuss them in deta EEBI component basod Dovelopmont © The commer ‘offthe-shelves components that are developed by the vendors are used during the yortware bull * These components have specialized targeted functionalities and well defined Interfaces, Hence it is easy to integ # The component based developmer nakes use of various characterst spiral model, This model is evolutionary in nature, That means the necess hangs can be made in the software during the each iteration of development cycle, * Before beginning, the modelling and construction activity of the candidate component must be searched and analyzed. The compen Pimple functions or can be object orlented classes oF methods te these components into the exit of scan be + Holowing steps ae applied or component based develop © entity the component based. proc and ‘esting application domain, 5 Analyze the component integration isu 1 Design the software architecture to ac Aoegate the components ito the soft Conduct comprchersive testing forthe * Software reusability ithe major advantage of compo # The reuabiy reuces the development eit nt aoe fet at alyze them for fitting in the rodate the components ect developed soft sd development and overall cost NGA ALERT os wane aoe Conect Oriented Software Engineering ee 72 + This model consists of the set of activities in which the formal mathematica specification is used «The software engineers specify, develop and test the computer based systems using the mathematical notations, The notations are specified within the formal methods + Cleancoom software engineering makes use ofthe formal method approach ‘+The advantage of using formal methods model is that it overcomes many problems that we encounter in traditional software process models. Ambiguity, incompleteness and inconsistency ae thove problems that can be overcome if we se for ‘User a Architect Format rogues een | —~) ima a Fig. 1.7.4 Aetivitie for formal method model ‘© The form methods model offers defect-tree software. However there are some drawbacks of this model which resists it from getting used widely. These drawbacks are The formal ts model is time consuming and expen For sing this model, the developers need the strong mathematical background or some extensive training this mod custo is chonen for development then the communication with ‘becomes very dificult, EEE) Aspect Oriented Software Development = In tr tional software development process, the system is decomposed into ile units of primary functionality, But thete are other isues of concern that ido not fit ino these primary functionalities. Later on this becomes programmers) “duty to code modules conresponding tothe primary functionality and o incorporate all other concerned issues wherever appropriate. «+ Proguammers need to keep in mind all the things that ne to be dane, hove to deal with each issue, the problems associated with them and the correct execution. Due to these concems there are chances of appearing serious problems during lll © scanned with OKEN Scanner 1 1.30 __ Sar Process ard Ae Do plication. devel rocess fOr realig sd maintenance. The coding P application development once becomes very critical Aspect Oriented Software Developmet and representation of cross-cutting aswell as thir automated composition into a work identification, spet nt focuses on th cat concerns and their modularization separate functional units system, ‘Aspectual requirements define these cross-cutting concerns that have impact on ty software architecture Aspect Oriented Software Development (AOSD) is often referred as Aspeg oriented programming. It's a relatively new software engineering paradigm and is not matured enough Bat is likely that it will adopt the characteristics of both the spiral and concurten PE nnn Solution : Pros : 1) The mathematical approach is useful in building scientific model itcal systems or simulation of real ime systems. 2)The ambiguity or incosistency problems can be eliminated if mathematical approach is adopted. 3)Developers are exceptionally committed tothe project. 4)The controlled and optimized system can be developed using mathematic ecm loped using mathematical Cons 2) The developers need the song mathematical background or some extensive ining. 2) The methods of software development are time consuming and ex 3)Many timesf mathematical approach is adopted aa peemgsmuriation with cusomer becomes ery di for software development, then cul ‘yet Orton Software Engineering ___ Sofware Process and Age Dovetoment Solution + oe [ Waterfall model RAD wodel Spiral modet ‘Requirements Requlremenis mast The requlveanis be dearly avaysis and gabering tnderstood and can be dene in erations because equtement get ‘changed git oten. fetined beginning oly development team having, the svting onthe Salar pret ‘poser work on the ype ot proves model aie feelopment eam fn te domain nowiedge ori cree ‘crology then sa team is lowed for his Kind of proces The development tam has hess domain knowledge o it new to ‘Types of Pro When the: © scanned with OKEN Scanner tar Process ad Ale Delp ijt Orie Scare Engine object Faplan the component asl sftre development mode ith nets ketch CUESTA EE introduction to Agility “» The Agile Manifesto, also called the Manifesto for Agile Software Development 2 formal dedaraion of fou key values and 12 principles to guide an iterative ang eoplecentrc approach to software development + The agile mathods were developed to overcome the weakness of convention software engineering. + Theapile manifesto is represented by following Fig. 181 eee ~ ee Fig. 184 Aglie manifesto ea eco Pe 9 ass nts] ‘+ {n 198s the heavy weight, plan based software development approach was used eer ai Sos ce vis Sees ‘software product being produced. ae + The spas iat mn enn edge hen ork ae

You might also like