You are on page 1of 44

2 Marks 1. What is software Engineering?

Software Engineering it establishment and use of sound engineering principles in order to obtain economic software that is reliable and works efficiently on all real machines.

2. Give the importance of risk analysis? Changes will occur in customer requirements, development technologies, target environment and all other entities connected to the project. It affect timeliness and overall success of the project. Risk analysis and management are a series of steps that help a software team to understand and manage uncertainity. Risk analysis is the key element of good software process management. The risk is potential proplem. It may happen or may not happen. But it is a good idea to identify it asses its impact, and establish a contingency plan should the problem actually occurs.

3. What is the difference between known risks and preditable risks?

Known Risks Predictable Risks It can be uncovered after careful evaluation project plan, business and technical environment in which the project is being developed, other reliable information resources. E.g. unrealistic delivery date, lack of software poor development environment. Predictable risks are extrapolated from past project experience.

E.g. staff turnover, poor communication with the customer, dilution of staff effort as ongoing maintenance requests are serviced.

4. What is the importance of Software Project Planning? The objective of the software project planning is to provide a framework that enabl e the manager to make reasonable estimates of resources, cost and schedule. These estimates are made within a limited time frame at the beginning of a software project and should be updated regularly as the project progresses.

5. State the levels of proc ess maturity. Five process maturity levels: 1. Level 1 - Initial

2. Level 2 - Repeatable 3. Level 3 - Defined 4. Level 4 - Managed 5. Level 5 Optimizing

6.Compare process and product.

S NO PRODUCT PROCESS 1 High quality software Process is the frame work for the tasks that are required to build high quality software. 2 It is the work product It is the frame work for a set of key process areas that must be established for effective delivery of software engineering technology. 3 Outcome of the process is the product If the process is week, the end product will suffer.

7. What are the element of a good project plan? * Estimation of work to be done * The resources required * The time required * The money required * Degree of structure & definition * Project size * Project complexity.

8. Though we have estimation tools and planning ideas, often software projects are developed when it come to meeting deadlines. Why? Software projects are delayed because of the improper use of tools, not understanding and following the plan & schedule, lack of training and not realizing the need to follow the guideline, plan and schedule.

9. What are the key element of RMMM plan with respect to risk management? Organizing risk management steps. Documenting all work performed as part of risk analysis & used by project manager.

Preparing Risk Information Sheet(RIS)

10. What are different software prototyping methods and tools available? For software prototyping to be effective, a prototype must be developed rapidly so that the customer may assess results and recommednd changes. To conduct rapid prototyping, 3 generic classes of methods and tools are available. a. Fourth generation techniques b. Reusable software components c. Formal specification and prototying environments. 11. What is direct metrics? Direct metrics/ size orinted metrics: Size oriented metrics are derived by normalizing quality and / or productivity measures by considering the size of the software that has been produced . SE process includes cos t and effort applied. Software product includes LOC produced, execution speed, memory size and defects reported. A table is created as follows:

Project LOC Effort $(000) Pp.doc Errors Defects People

12. What is indirect metrics? Indirect metrics(Function-oriented metrics) Use a measure of the functionality delivered by the application as a normalization value. It uses the measure called Function Point. Metrics is derived based on direct measures of software information domain and assessment of softwar e complexity. FP is determined by five information domain characteristics. Function points are computed by completing the table:

Measurement parameter Count Simple Average Complex Total Number of user i/ps Number of user o/ps Number of user enquries Number of files Number of external Interface

Count total =

FP = count total * [0.65 + 0.01* fi] Fi( I = 1 to 14) complexity adjustment value.It is based on 14 question asked by the developer to himself.

13 Define software engineering.

Software engineering is the technological and managerial discipline concerned with systematic production and maintenance of software products That are developed and modified on time and with cost estimates.

14 What are the primary goals of software engineering

The primary goals of software engineering are

1. To improve the quality of software products 2. To increase the productivity and 3. Job satisfaction of software engineer

15 What are the fundamental principle of software engineering.

The fundamental principle of software engineering is to design software products that minimize the itellectula distance between problem and solution.

16 Define the term PROGRAMMER.

The term programmer is used to denote an individual who is concerned with the details of implementing, packaging vend modifying algorithms and data structures written in particular programming languages.

17 What is the job of software engineer

Software engineers are concerned with issues of analysis, design, verification and testing, d ocumentation, software maintenance and project management

18 Define the term of computer software

computer software includes the source code and all the associated documents and documentation, that constitute a software product.

19 What are all the components of a software product (MU:Ap -97). Requirements document Users manuals Design specifications ware problem repots Source code Soft Test plans Training aid Principles of operation Quality assurance produces

20 What are the primary goals of software engineering? The primary goals of software engineering are i) To improve the quality of software products. ii) To increase the productive and iii) Job satisfaction of software engineers.

21 What is the fundamental principle of software engineeri ng? The fundamental principle of software engineering is to design software products that minimize the intellectual distance betwee4n problem and solution.

22 Define the term PROGRAMMER The term Programmer is used to denote an individual who is conce rned with the details of implementing, packaging and modifying algorithms and data structures written in particular programming languages.

23 hat is the job of software engineer? Software engineers are concerned with issues of analysis, design, verificat ion and testing, documentation, software maintenance and project management.

24 efine the term Computer software Computer software includes the source code and all the associated documents and documentation that constitute a software product.

25 What are all the components of a software product? (MU:Ap -97) i) Requirements document vi) Quality assurance procedures ii) Design specifications vii) Software problems reports iii) Source code viii) Users manuals iv) Test plans ix) Training aids v) Principles of operation x) Maintenance procedures are all components of a software product. 26 What are the fundamental quality attributes that every software Product should posses? i) Usefulness iv) Efficiency ii) Clarity v) Cost -effectiveness Iii) Reliability

27 Define Software reliability. Software reliability is the ability of a program to perform a required function under stated conditions for a stated period of time

28 What are the activities involved in software maintenance?

i) Enhancing the capabilities of the products ii) Adapting the products to new processing environments.

iii) Correcting Bugs.

29 Give short notes on Trivial projects

A trivial project involves one program duration of the project is from 1 to 4 weeks. The size of the products is about 500 source lines.

30 Short notes on small projects. Number of programmers involved p 1 Duration of the project 1 p 6 months Source code size p 1 K - 2 K Examples p Scientific applications, small Commercial applications and Student projects. 31 Explain about medium - size projects. Number of programmers p 2 - 5 Duration of the project p 1 - 2 years Product size p 5K - 50K Example p Assemblers, comliers Inventory systems management information systems.

32. Write short notes on large projects. Number of programmers p 5 20 Duration of the project p 2 3 years Product size p 50K 100K Examples p Large compilers, small time Sharing systems, data-base Packages, graphics Programs.

33. Explain about very large projects.


pNumber of programmers 100 1000

Duration of the project 4 5 years Product size p 1 M Examples p Real time processing, Telecommunication and Multitasking

34. Number of programmers p 2000 5000 Duration of the project p 5 10 years Product size p 1M 10M Examples p Air traffic control, ballistic Missile defense military Command and control Systems

35. Mention some factors that influence quality and productivity. i) Individual ability ii) Team communication iii) Product complexity iv) Appropriate notation s v) Systematic approaches vi) Level of Technology.

36. What are the two aspects to individual ability? i) The general competence of the individual ii) The familiarity of the individual with the particular application area.

37. state Brooks law for term communication

The Brooks law states that Adding more programmers to a late project may make it later

38 what are the three levels of product complexity i) Application programs ii) Utility programs iii) System-level programs

39. What are utility programs? Utility programs include Compliers, Assemblers, Linkage Editors, and loaders.

40. System level programs include data communications packages, real time process control systems an operating systems routines, which are usually written i n assembly language or a High-level language such as PL/1 or Ada.

41. What are the stages involved in planning a software project? i) Defining the problem ii) Developing a solution strategy iii) Planning the development process.

42. What is the first s tages in planning a project? The first step in planning a software project is to prepare, a concise statement of the problem to be solved and the constrai nts that exist for its solution. The problem statement should include a description of the present sit uation and the goals to be achieved by the new system.

43. What is the second step in planning a software project? The second step in planning a software project is to determine the appropriateness of a computer sided solution. In addition to being a cost-effective, a computerized system must be socially and politically acceptable.

44. Explain about portability of a software product. The case with which software can be transferred from one computer system or environment to another.

45. Explain about portability of a software product. The extent to which software performs its intended functions with a minimum consumption of computing resources.

46. Explain the factor-Robustness. The extent to which software can continue to operate correctly despite th e introduction of invalid inputs.

47. Mentioned some factors to consider in setting project goals. i) New capabilities to be provided ii) Efficiency requirements. iii) Security concerns. iv) Likely modifications. v) Level of user sophistication.

48. What are the five phases in software life cycle? i) Analysis phase ii) Design phase iii) Implement phase iv) System Test v) Maintenance phase

49. What are the two sub phases in Analysis Phase? Analysis consists of two sub phases. They are i) Planning and ii) Requirements definition

50. What are the major activities during planning?

The Major activities include understanding the customers problem, performing a feasibility suty, developing a recommended solution strategy, determining the acceptance crite ria and planning the development process

51. Define the term Software Maintenance The term Software maintenance is used to describe the software engineering activities that occur following delivery of a software product to the customer.

It is the t ime period in which a software product performing useful work

52. What are the 2 products of planning? i) System definition ii) Project plan

53. Explain about system definition. The system definition is typically expressed in English or some other natural language and may incorporate charts figures, graphs, tables and equations.

54. What are the contents of Project Plan? The project plan contains the life -cycle model to be used the organizational structural for the project, the preliminary development schedule, preliminary cost and resource estimates, preliminary staffing requirements, tools and techniques to be used and standard practices to be followed.

55. What is requirements definition? Requirements definition is concerned with identifying the basic functions of the software component in hardware/software/people system.

56. What is the product of Requirements Definition? The product of requirements definition is a specification that describes the processing environment, the required software functions, performance constraints on the software exception handling, subsets and implementation priorities, probable changes and likely modifications and the acceptance criteria for the software.

57. What is the purpose of Software Design? Design is concerned with identifying software components specifying relationship among components, specifying software structure, maintaining a record of design decisions and providing a blue print for the implementation phase.

58. What are the two types of software design? i) Architectural Design ii) Detailed Design

59. Explain Architectural Design. Architectural design involves identifying the software components, decoupling and decomposing them into processing modules and conceptual data structures, and specifying the inter connections among components.

60. Explain about Detailed Design Detailed design involves adoption of existing code, modification of standard algorithms, invention of new algorithms, design of data representation and packaging of the software product.

61. What is the purpose of Product Feasibility Review (PFT)? The purpose of product feasibility review is to determine the feasibility of project continuation. The outcome of the review may be termination of the project, redirection of the project or continuation of the project.

62. What is the use of preparing users manual? It provides a vehicle of communication between customer and developer. It is prepared using information form the system definition as well as the r esults of prototype studies.

63. What is a prototype. (MU:Ap -97) A prototype is a make-up or model of a software product. In a contrast to a simulation model, a prototype incorporate components of the actual product.

64. What are the reasons for develo ping a prototype? i) To illustrate input data formats, messages, reports and interactive dialogues for the customer. ii) To explore technical issues in the proposed product.

65. What are the three types of programming team structure? i) Democratic Teams ii) Chief programmer Teams

iii) Hierarchical team structure. . 66. What are the major factors that influence software cost (MU:Ap -97) i) Programmer ability ii) Product complexity iii) Product size iv) Available Time v) Required reliability vi) Level of technology.

67. What are the various cost estimation techniques? i) Expert Judgment ii) Delhi cost estimation iii) Work Breakdown structures iv) Algorithmic cost models.

68. Discuss briefly about Top -down estimation. Top-down estimation Top-down estimation. first focuses on system level costs, such as the computing resources and personnel required to develop the system, as well as the costs of configuration management, quality assurance, system integration, training and publications.

69. Give short note on Bottom-up estimation. Bottom-up cost estimation first estimates the of develop each module or subsystem. Those costs are combined to arrive at an overall estimate.60. What are the four possible life -cycle models? i) The phased model ii) The cost model iii) The prototype model iv) The successive versions model

16 Marks

1. (i) Explain win -win spiral model and evolutionary models of software life cycles. Compare with object oriented life cycles. * (ii) Whar are software development problems? Desc ribe. * 2. (i) Explain in detail Boehms spiral model for software life cycle and discuss various activities in each phase. * 3. Describe a software life cycle model and compare with software production. * 4. Explain the system engineering concepts and bri efly describe on product engineering.* 5. Explain iterative waterfall and spiral model for software life cycle and discuss various activities in each phase. * 6. (i) Explain the advantages of adhering to life cycle model for software development. * (ii) Describe waterfall and spiral models of life cycle * (iii) How do you classify softwares based on cost, application and development time? Explain. * 7. Explain in detail about RAD Model. 8. Write in detail about the various phases of software engineering. 9. (i) Which is more important the product or process? Justify your answer (ii) Identify the umbrella activities in software engineering process. (iii) With suitable illustration explain about Spiral model evolutionary software development. * 10. Explain the concept of verification and validation with respect to software with an example. * 11. Explain in detail the spiral model and compare this model with incremental model in detail. * 12. Explain system engineering in detail with example. 13. Explain the computer based system in detail. 14. Explain the object oriented model of life cycle process. 15. Explain the development process in software engineering.

unit 2
2 Marks 1. What are Computer-Based System Elements? Software,Hardware, People,Database, Documentation,Procedures.

2. Explain System Engineering Hierarchy?

World view Domain view Element view Detailed view

3. What do you meant by System Modeling?

Definte the processes that serve the needs of the view under consideration Represent the process behavior and the assumptions on which the behavior is modeled Explicitly define the exogenous (links between constituents) and endogenous (links between constituent components) input to the model. Represent all linkages (including outputs) required to understand the view.

4. Mention the Business Process Engineering Hierarchy? Information Strategy Planning (world view) Business Area Analysis(domain view) Business System Design(Element view software engineers) Construction and Integration (detailed view- software engineers)

5. Write about Product Engineering Hierarchy

Requirements engineering (world view) Component engineering (domain view) Analysis and Design modeling (element view software engineers) Construction and Integration (detailed vie w software engineers)

6. What do you mean by Business Process Engineering Architectures? Data Architecture provides framework for information needs of a business or business function. Applications architecture those system elements that transform o bjects within the data architecture for some business purpose.

Technology infrastructure provides foundation for the data and application architectures.

7. Explain the various Requirements Engineering Tasks Inception Elicitation Elaboration Negotiation Specification Requirements validation

8. Describe about Traceability Tables Features traceability table(shows how requirements relate to customer observable feature) Source traceability table(indicate relations among requirements) Subsystem traceability table (requirements categorized by subsystem) Interface traceability table (shows requirement relations to internal and external interfaces)

9. What do you meant by Quality function deployment (QFD)? Identifies three types of req uirements (normal, expected, exciting) In customer meetings function deployment is used to determine the value of each function that is required for the system. Information deployment identifies both data objects and events that the system must consume or produce(these are linked to functions) Task deployment examines the system behavior in the context of its environment Value analysis is conducted to determine relative priority of each requirement generated by the deployment activities.

10. Describe about User-scenarios Also known as use-cases, describe how the system will be used. Developers and users create a set of usage threads for the system to be constructed.

11. What are the Analysis Model Objectives? Describe what the customer requires. Establis h a basis for the creation of a software design.Devise a set of requirements that can be validated once the software is built.

12. Write short notes on UML Activity Diagrams? Supplements use-case by providing graphical representation of the interaction f low within a specific scenario. Similar to flow chart Rounded rectangles used to represent functions Diamonds used to represent decision points. Labeled arrows represent decision alternatives. Solid horizontal lines indicate parallel activities.

13. What are UML Swimlane Diagrams? Variation of activity diagrams used show flow of activities in use case as well as indicating which actor has responsibility for activity rectangle actions. Responsibilities are represented by parallel line segments that divide the diagram vertically headed by the responsible actor.

14. What do you meant by Class-Responsibility Collaborator (CRC) Modeling? Develop a set of index cards that represent the system classes. One class per card Cards are divide into three sections (class name, class responsibilities, class collaborators) Once a complete CRC card set is developed it is reviewed examining the usage scenarios

15. Describe about Associations and Dependencies Association present any time two classes are related to on e another in some fashion. Association multiplicity or cardinality can be indicated in a UML class diagram(e.g, 0..1, 1..1,0.., 1..) Dependency client/server relationship between two classes Dependency relationships are indicated in class diagrams using stereotype names surrounded by angle brackets (e.g., stereotypes)

16.Object Behavior Model Construction Evaluate all use-cases to understand the sequence of interaction within the system. Identify events that drive the interaction sequence and how even ts relate to specific object. Create an envent trace for each use-case. Build a state diagram for the system. Build a sequence diagram for the system. Review the object behavior model to verify accuracy and consistency.

17.Object Oriented Analysis Model Elements Scenario-based depict how the user interacts with the system(use -case diagram) and the sequence of activities that occur during software use (activity diagrams and swim land diagrams) Class-base model the system objects, operations, class relationships(class diagram( Behavioral depict how external events change the state of the system or the system classes (state diagram and sequence diagrams) Flow oriented- represents the system as an information transform and depict how data objects a re transformed as they flow through system function (dataflow diagram)

18.Describe the Analysis Pattern Template Name Intent Motivation Forces and Content Solution Consequences Design

Know use examples Related patterns

19. What are the various representation used to depict the analysis model? Man different representation can be used to depict the anlalysis mode Use-case diagram Activity diagram Class diagrams State diagram Data flow diagram(DFD)

20. Define DFD Data flow diagram(DFD) provides an indication of how data are transformed as they move through the system; also depicts functions that transform the data flow(a function is represented in a DFD using a process specification or PSPTEC).

21 What are the languages which are designed to express software requirements? (MU:Ap97)

i) Problem statement language (PSL) ii) Requirements statement language (RSL) iii) SADT language (Structured Analysis & Design Technique) iv) SSA uses graphical language.

22 What is the goal of softw are requirements definition? The goal of software requirements definition is to completely and consistently specify the technical requirements for the software product in a concise and unambiguous manner, using formal notations as appropriate.

23 White the first and second section in format of a software requirements specification. Section 1 : Product overview and summary

Section 2 : Development, Operating and Maintenance Environment.

24 Discuss about section 3 of the format of a software requirements s pecifications. Section 3 specifies the externally observable characteristics of the software product. Items in section 3 include user displa ys and report formats, a summary of user commands and report options, data flow diagrams and a data dictionary.

25 Define Data store. A data store is a conceptual data structure, in the sense that physical implementation details are suppressed, only the logic al characteristics of data are emphasized on a data flow diagram.

26 What are the entries in data dictionary? Entries in a data dictionary include the name of the data item, and attributes such as the data flow diagrams where it is use d, its purpose, where it is used, its purpose, where it is derived from, its sub items and any notes that may be appropriate.

27 List some perfor4mance characteristics

Response time for various activities. Processing time for various processes. Throughput . Primary and secondary memory constraints. Required telecommunication bandwidth.

16 Marks 1. Explain the state oriented approaches for representing behavioural specification of a software. * 2. Narrate the importance of software specification of requirements.Explain a typical SRS structure and its parts. * 3. Draw the basic structure of analysis model and explain each entit y in detail. * 4. Explain the ways and means for collecting the software requirements and how are they organized and represented. * 5. Describe the various prototyping techniques and discuss on analysis and modeling. * 6. Explain the feasibility studies. W hat are the outcomes? Does it have either explicit or implicit effects on software requirement collection. * 7. What is a prototyping technique? How prototype models are prepared foe a software process? Discuss. *

8. Describe how software requirements are documented? State the importance of documentation. 9. Explain in detail about the Mechanics of Structured Analysis. 10. Write in detail about the Analysis Principles? 11. Write in detail about requirement elicitation? 12. Explain the concept of software pr ototyping. What are the strengths and weakness of it. * 13. Discuss in detail the FAST method of (i) Requirement elicitation with an example. (ii) What is software specification? * 14. (i) Compare functional and behavioural models. (ii) With suitable diagr am explain the elements of the analysis model. (iii) With an example explain about DFD. * 15. (i) Explain the extension of DFD for real time systems. (ii) Discuss the features of state transition diagram and its application. 16. Explain the functional and non- functional user requirements. 17. Explain the steps used for validation and management of a software. 18. What are the rapid prototyping techniques. 19. What is software requirements? What are the various methods of gathering software requirements? Explain. * 20. Discuss the importance of requirement analysis in detail. Explain how analysis model is organized. * 21. Discuss the basic structure of analysis model and explain each entity in detail. *

unit 3
2 Marks 1. Define: Architectural design Architectural design represents the structure of data and program components that are required to build a computer based system. It considers the architectural style that the system will take, the structure and properties of the components that constitute the system, and the interrelationship that occur among all architectural components of a system.

2. What is Data Design? High level model depicting users view of the data or information.

Design of data structures and operators is essential to creation of high-quality applications. Translation of data model into database is critical to achieving system business objectives. Reorganizing databases into data warehouse enables data mining or knowledge discovery that can impact success of business itself

3. Define the term in software designing: Modularity. The software is divided into separately named and addressable components, often called modules that are integrated to satisfy problem requirements. Modularity is the single attribute of software that allows a program to be intellectually manageable.

4. How will you ensure for effective modular design? Effective modular design reduces complexity, facilitates change, & easier implementation by encouraging parallel development of different parts of a system. Developing modules with single minded function is said to be functional independence. Functional independence modules have high cohesion and low coupling Functional Independence. Functional independence modules have high cohesion and low coupling Functional Independence is measured using two qualitative criteria: Cohesion and coupling. Cohesion qualitative indication of the degree to which a module focuses on just one thing Coupling qualitative indication of the degree to which a module is connected to other modules and to the outside world.

5.What is the difference between cardinality and modality. Cardinality-in data modeling, Cardinality specifies how the number of occurrences of one object are related to the number of occurrences of another object(1:1,1:N,M:N)

Modality-Zero(0) for an optional object relationship and one(1) for a mandatory relationship.

6.Discuss about Data Flow Diagrams. DFD is a graphical representation that depicts information flow and the transforms that applied as data move from input to output. DFD may be used to represent a system at any level of abstraction .DFD allows us to picture a system as a network of functional processes ,connected to another by Pipelines and Holding tanks of data. DFD is function oriented. You can also call it as Bubble Chart, Bubble Diagram, process model, workflow diagram.

7.What is JSD ?Mention the various steps. JSD is the technique for mapping the structure of a problem into a program structure. Mapping Steps:

1. Specify the input and output Data Structures using Structured Diagram. 2. Convert the above structure into program structure. It will identify the points correspondence between nodes in the input and output. 3. Expand it to detailed design(contains the operations needed to solve the problem) 3.1. Develop list of operations. 3.2. Associate operations with the program structure. 3.3. Program structure & operation are expressed in schematic logic(pseudo code)specifies the control flow for selection & iteration.

8. Explain State Transition Diagrams. State transition diagram(STD) indicates how the system behaves as a consequence external events, states are used to represent behavior modes. Arcs are labeled with the event triggering the transitions from one state to another(Contr ol information is contained in couple of specification or CSPEC).STD represent the system states and events that trigger state transitions.

1. Describe about Interface Design. Interface is a set of operations that describes the externally observable beha vior of a class and provides access to its operations. Important elements: ->User interface(UI),External interfaces to other systems, Internal interfaces between various design components, Modeled using UMI, collaboration diagrams.

10.Define component level design. Describes the internal detail of each software component. Defines: Data structures for all local data objects. Algorithmic Detail for all component processing functions. Interface that allows access to all component operations. Modeled using UML component diagrams, UML activity diagrams, and pseudocode(PDL).

11. What do you meant by ADL? Architectural Description Language (ADL)

Provides syntax and semantics for describing software architecture. Provides designers with abili ty to decomposee components, combine components, and define interfaces.

12. Write the steps in transform mapping. Transform Mapping 1. Review fundamental system model 2. Review and redefine data flow diagrams for the software. 3. Determine whether the DF D has transform or transaction characteristics 4. Isolate the transform center by specifying incoming and outgoing flow boundaries 5. Perform first level factoring 6. Perform second level factoring. 7. Refine the first iteration architecture using design h euristics for improved software quality.

13. Explain Object-Oriented Component Design Object-Oriented Component Design

Focuses on the elaboration of domain specific analysis classes and the definition of infrastructure classes Detailed description of class attributes, operation, and interfaces is required prior to beginning construction activities

14. Mention some of the cohesion types. Cohension Utility Cohesion Temporal Cohesion Procedural Cohesion Communication Cohesion. Sequential Cohesion Layer Cohesion Functional Cohesion.

15. Mention various coupling types. Coupling: Data Coupling. Stamp Coupling. Control Coupling. External Coupling. Common Coupling. Content Coupling. Routine Call Coupling. Type use Coupling. Inclusion or Import.

16. What is Distributed System. A Distributed system consists of more processors operating in parallel with shared memory and also their own memory and communicates through a network. Real time systems that distributed systems are used in pro cess control and other mission critical applications.

17. What do you meant by FURPS? FURPS Quality Factors Functionality Usability Reliability Performance Supportability

18. Explain about OCL. Object Constraint Language (OCL). Complements UML by allowing a software engineer to use formal grammar and syntax to construct unambiguous statements about design model element Parts of OCL language Statements

1. A Context that denotes the limited situation in which the statements is Valid. 2. A Property representing some characteristics of the context. 3. An operation that manipulates or Qualifies a property. 4. Keywords used to specify conditional expressions

19. Describe about Interface Design. Interface Design: Use the information Developed during interface analysis to define interface objects and actions(Operations) Define events that will cause the state of the user interface to change and model this behavior. Depict each interface state as it will appear to the end -user. Indicate how the user interprets the state of the system from information provided through the interface.

20. What are the golden rules while performing user interface design. The Golden Rules: Place the user in control Reduce the users memory load Make the Interface Consistent

16 Marks 1. Describes decomposition levels of abstraction and modularity concepts in software design. * 2. What are the characteristics of good design? Describe different types of coupling and cohesion. How design evaluation is performed. * 3. What are the different architectural styles for software design and explain in detail each style. * 4. Discuss in detail about the design process in software development process. Justify : Design is not coding and coding is not design. * 5. Describe the architectural design of a software. * 6. Explain the information presentation procedures and the techniques for the evaluation of interface. * 7. Describe the impact of cohesion, coupling, fan -in, fan-out and factoring in design phase. * 8. Explain the real time software design and discuss the same for a data acquisition system. *

9. Explain data, architectural and procedural design for a software. Explain. And describe the design procedure for a data acquisition system. 10. Explain the importance of user interface design for the sale of a software. * 11. Discuss the Human -computer interaction. Explain different heuristrics design procedure used for this. 12. Write a short note on SCM process. 13. What is transform mapping? Explain the process w ith an illustration. What is the strength and weakness. * 14. Explain the various design concepts considered during design * 15. What do you understand by software architecture? Discuss in detail about various model. * 16. What is software design? Who does this? What are the steps in the design activity? What is the outcome of design activity ? Explain * 17. Give the design heuristics. 18. Explain effective modular design. 19. Explain data design and architectural design.

unit 4
1. What is cyclomatic comp lexity? It is as software metric that provides a quantitative measure of the logical complexity of a program. It defines the number o f independent paths. Provides an upper bound for the number of test. Complexity is computed in one of the 3 ways.

1. V(G) =R+1 denotes number of regions in the flow graph. 2. V(G) = E-N+2 E-> Number of edges, N-> Number of nodes. 3. V(G) =P+1 P-> Number of predicate nodes.

2. What is system testing? System Testing- To test the entire computer based system. Recovery testing checks the systems ability to recover from failures Security testing verifies that system protection mechanism prevent improper penetration or data alteration Stress testing program is checked to see how well it deals with abnormal resource demands(i.e., quantity, frequency, or volume) Performance testing designed to test the run-time performance of software, especially real -time software.

3. List any four principles of testing. Testing principles All test should be traceable to cus tomer requirements Tests should be planned long before testing begins. Testing should begin in small and progress towards testing in large. Exhaustive testing is not possible. Testing should be conducted by an independent third party.

4. What do you meant by white-box testing? White box testing is also called structural testing or glass box testing. The internal program logic is checked Logical paths through the software are tested Status of program is examined All independent paths with in a module is tested It tests the code It is applied in the early stage of testing process. It uses the control structure of the procedural design to derive test cases.

5. Define Black box testing/behavioral testing? It exercises all the functio nal requirements of the software. It does not know the internal working of the product. It specifies the functions of the software. It demonstrates that software functions are operational, ie whether i/p is accepted as output is correctly produced, and that the integrity of external information (database) is maintained. It does not check the logical errors present in the application.

6. What is a graph matrix? Discuss. Graph matrix is a structure. It is used to develop s/w tool for testing. It is a squ are matrix of order n, where n is the number of nodes. It is tabular representation of flow graph. But row and column corresponds to an identified node and matrix entries correspond to connection between nodes. By adding a link weight to each matrix entry, the graph matrix can become powerful tool for evaluating program control structure during testing. If there is connection, weight is 1 or 0. The link wei ght provides additional information about control flow. It is a called connection matrix. Each row wit h two or more entries represent predicate node.

7. Define verification, Validation Verification refers to the set of activities that ensure that software correctly implements a special function. Validation refers to a different set of activities that ens ure that the software that has been built traceable to customer requirements.

8. Explain the activities of Verification and validation. Verification and validation encompasses a wide array of software quality assurance activities that include formal tech nical reviews, quality configuration audits, performance monitoring, simulation, feasibility study, documentation review, database review, qualification testing and installation testing.

9. Discuss on software maintenance The maintenance of existing software can account for over 60% of all effort expend by a development organization and the percentage continues to rise as more than fixing mistakes. The four activities of software maintenance are Corrective maintenance, adaptive maintenance or enhancem ent and preventive maintenance or re-engineering

Only about 20% of all maintenance work is spent fixing mistakes. The remaining 80% spent adapting existing systems to changes in their external environment, making enhancement requested by users.

10. What test metrics are being used? Error rates in design, in test execution, in operations or field use Error severity and distribution in different development stages Time/cost in test running

Time/cost in bug fixing Time/cost in inspections or reviews. Defect present/remaining Defect density Defect remo0val efficiency

11. Mention some of the white box testing techniques 1. Basic path testing Flow graph notation Cyclomatic complexity Graph metrics 2. Control structure testing a) Condition testing i) Statement coverage, ii) Decision Coverage iii) Condition Coverage iv) Multiple condition coverage v) path coverage. b) Data flow testing c) Loop testing i) Simple loop testing ii) nested loop testing iii) concatenated loop testing iv) unstru ctured loop testing.

12. Define alpha testing. The alpha test is conducted at the developers site by a customer. The software is used in natural setting with the developer of the user and recording errors and usage problems. Alpha test are conducted i n a controlled environment.

13.What is incremental testing? Top down integration testing is an incremental approach to construction of program structure. Modules are integrated by moving downward thru the control hierarchy beginning from main control m odule and then the subordinate modules are incorporated in the depth first or breadth first manner.

14. Mention some of the approaches in debugging

Some people are better at debugging than others. Common approaches: Brute force - memory dumps and run-time traces are examined for clues to error causes Back Tracking Source code is examined by looking backwards from symptom to potential causes of errors Cause elimination - uses binary partitioning to reduce the number of locations potential(Wher e errors can exist) 15. Explain Unit testing

Unit Testing makes heavy use of testing techniques that exercise specific control paths to detect errors in each software components individually. The steps are

Module interfaces are tested for proper i nformation flow. Local data are examined to ensure that integrity is maintained. Boundary conditions are tested. Basis (independent) path are tested. All error handling paths should be tested. Drivers and/or stubs need to be developed to test inc omplete software.

16. Define Regression testing. Regression testing- used to check for defects propagated to other modules by changes made to existing program.

17. What is smoke testing? Smoke testing 1. Software components already translated into code are integrated into a build. 2. A series of tests designed to expose errors that will keep the build from performing its function are created. The build is integrated with other builds and the entire product is smoke tested daily (top or bottom integr ation may be used).

18. What is Scenario-Based testing? OO Scenario-Based Testing Using the user tasks described in the use -cases are building the test cases from the task and their variants Uncovers errors that occur when any actor interacts with the OO software Concentrates on what the use does, not what the product does You can get a higher return on your effort t by spending more time on reviewing the use -cases as they are creating, than spending more time on use-case testing.

19. Describe about comparison testing.

Comparison testing black-box testing for safety critical systems in which independently developed implementations of redundant systems are tested for conformance to specifications Often equivalence class partitioning is used to develop a common set of test cases for each implementation.

20.Explain Orthogonal Array testing. Orthogonal Array Testing Black-box technique that enables the design of a reasonably small set of test cases that provide maximum test coverage Focus is on categories of faulty logic likely to be present in the software component(without examining the code) Priorities for assessing tests using an orthogonal array 1. Detect and isolate all single mode faults 2. Detect all double mode faults 3. Multimode faults

16 Marks

1. Describe software failures and faults. What is test coverage criteria? Discuss testing issues.

2. Explain automated software testing tools. How test cases are generated? Discuss when to stop testing. What are performances testing? Describe. 3. Justify the importance of testing process. Discuss in detail Alpha Testing and Beta Testing. 4. What is meant by integration testing? Explain. Discuss on their out comes. 5. How do you define test cases for a software and explain how do you organize and perform various testing? 6. Explain the verification and validation techniques. How are they related to software reliability? Discuss. 7. What is black box testing? Is it necessary to perform this? Explain various test activities. 8. Explain the integration testing process and system testing processes and discuss on their outcomes. 9. Explain the testing procedures for boundary conditions. 10. Describe unit testing and integration testing. How test plans are generated? 11. Suggest software testing sequence of a 100% bug free software. Explain.

unit 5 2 Marks 1. Define the term software reliability. Software reliability is the probability of failure -free operation of a computer program in a specified environment for a specified time. Failure is nonconformance to software requirements. Correction of one failure may introduce errors. Some failure can be corrected within second & some require weeks or months.

Reliability Measure: Mean -Time-Between-Failure(MTBF). MTBF=MTTF+MTTR

2. Define the terms reliability and maintainability.

Reliability: It is the extent to which a program can be expected to perform its intended function with required precision.

Maintainability:

It is the effort required to locate and fix an error in an ope rational program.

3.What is SQA? The SQA group has responsibility for quality assurance planning, oversight, record keeping, analysis and reporting.

Role of SQA group: Prepares an SQA plan for a project. Participates in the development of the projects software process description. Reviews s/w engineering activities to verify compliance with the defined s/w process. Audits designated s/w work products. Records any noncompliance and report to senior management.

4.What are the MC Calls quality factors for software metrics. Production revision factors: Maintainability, Flexibility, Testability Product transition factors: Portability, Reusability, Interoperability Production Revision factors: Correctness, Reliability, Usability, Integrity, Efficiency.

5.Differentiate FTR and SCA(Software Configuration Audit) FTR objectives: To uncover errors in functions, logic, implementation, representation. To verify that s/w meets its requirements. To achieve s/w that is developed in a uniform manner. To make projects more manageable.

SCA:

SCA is a verification of a configuration items compliance with its configuration identification. Verifies conformance with requirements are achieved or not. Whether the procedures are followed. Whether the traceability is maintained?

6. What is SQA activities? The SQA group has responsibility for quality assurance planning, oversight, record keeping, analysis and reporting.

7. Define the role of SQA group.

Prepares an SQA plan for project. Participates in the development of the projects software process description. Reviews s/w engineering activities to verify compliance with the defined s/w process. Audits designated s/w work products. Records any noncompliance and report to senior management.

8. What do you mean by s/w reviews? It is a filter for the S.E process. Reviews are applied at various points during the development and serve to uncover errors and to remove the defects. It purifies the S.E activities.

9. What is the measure of reliability an d availability? A simple measure of reliability is main -time-between-failures(MTBF) MTBF=MTTF+MTTR Availability is the probability that a program is operating according to requirement at a given point in time & it is defined as Availability = [MTTF /(MTTF + MTTR)]*100%

10. Discuss about ISO 9126 quality factors. ISO quality standard was developed in an attempt to identify the key quality attributes for computer software. The key quality attributes are Functionality, Reliability, Usability, Efficiency, Mai ntainability, and portability.

11. Define QFD. QFD is quality management techniques that translate the needs of the customer into technical requirements for software. It concentrates on maximizing customer satisfaction.

QFD identifies three type of requirements. 1. Normal requirements. 2. Expected requirements 3. Exciting requirements.

12. Give an account on Defect removal efficiency. To assess the real time quality of software, engineers use certain technical measures. Defect removal efficiency (D RE) is one such quality metric that provides benefit at the project level. It is actually a measure of filtering ability of quality assu rance and control activities as they are applied throughout all process framework activities.

DRE=E/E+D In addition, DRF can be used within the project to assess a teams ability to find errors before they passed to next framework activity or software engineering task. Hence DRE can be redefined as DRE(I)=E(I)/E(I)+E(I+I) Where E(I) is the number of errors found during so ftware engineering activity I and E(I_I) is the number of errors found during software engineering activity I+I that are traceable to errors that were not discovered in software engineering activi ty.

13. What is SCM?

S/W Configuration Management..

It is discipline for managing the evolution of the computer products. SCM helps coordinating software development to minimize confusion. Goal is to maximize productivity by minimizing mistakes. SCM includes a set of activities to , 1. Identify change. 2. Control change. 3. Implement change. 4. Report change.

14. What is the need configuration management? The purpose of Software Configuration Management is to establish and maintain the integrity of the products of the software project throughout the projects software life cycle.

The SCM process within the project must provide a managed update of the evolving system configuration throughtout the life cycle. SCM shall achieve the following objectives 1. SCM activities are planned. 2. Selected software work products are identified, controlled and available. 3. Changes to identified software work products are controlled. 4. Software baselines are periodically audited and effected groups or informed of the status and contents as change make necessary. 5. Control and accounting of system functional and physical characteristics are provided for across the entire life cycle. 6. SCM activities will be periodically examined by the Software quality Assurance element. 7. SCM activities are reviewed with senior manageme nt of a period basis.

15. What is baseline? It is n software configuration item(CI)chat.

Has been formally reviewed and agreed. Serve as the basis for further development Changed only through formal change procedure. It is the foundation for configurat ion management. It provides the official standard on which subsequent work is based and to only authorized changes are made.

After an initial baseline is established and frozen, every subsequent change is recorded as until the nest baseline is set. A point at which some deliverable produced during the software engineers process is put under formal change control.

16. Explain Version control. Version is an instance of a system which is functionally distinct in some way from other system instances. A base line can only be changed by creating a new version. It is used to Keep track of SCI version. To mange different version of SCI

To ensure repeatability & ability to reproduce any version of the s/w at any time.

17. What is version management? Version management is, Invent identification scheme for system version. Plan when new system version is to be produced. Ensure that version management tools & procedures are applied. Plan & distribute new system releases.

18. Discuss Configuration change control It involves managing & controlling changes to the SCIs, baseline & s/w releases Elements(process steps/activities) Evaluation Co-ordination Approval or disapproval Implementation of changes.

19. What is change management? Changes should be Analyzed before they are made Recorded before they are implemented. Verified after they are implemented Reported to affected parties.

20. Mention the members of change control board A group of people are responsible for CC activities. Members include Project Manager, Use r representative, Quality controller. There can be different boards for different change requests.

21. List the functions of Re -engineering tools. The re-engineering tools can be subdivided into

Reverse engineering to specification tools. Code reconstruction and analysis tools On-line system re-engineering tools.

22. What is the base line criteria in SCM? A work product becomes a baseline only after it is reviewed and approved. A baseline is a milestone in software development that is marked by the deli very of one or more configuration items. Once a baseline is established each change request must be evaluated and verified by a formal procedure before it is processed.

23. Explain configuration status reporting. Configuration status reporting( Configuration Audit) is an SCM task that answers the following questions. What are the conformance with requirements? What are the procedures to be followed? What kind of traceability is maintained? It is the verification of a configuration items complianc e with its configuration identification. Two types of audit Functional Configuration Audit(FCA) Physical Configuration Audit(PCA)

24. Define CASE tools Computer Aided Software Engineering Tools provide the software engineer with the ability to automate m anual activities and to improve engineering insight. The CASE tools ensure that the quality is designed in before the product is built.

25. Mention some of the CASE tools. Risk analysis tools, Project management tools, Documentation tools, System softwar e tools, Project planning tools, Quality assurance tools, Database assurance tools, Test management tools, Client/Server tools, Web development tools, Prototyping tools.

26 Differentiate FTR and SCA (Software Configuration Audit) FTR objectives: To uncover errors in functions, logic, implementation, representation.

To verify that s/w meets its requirements. To achieve s/w that is developed in a uniform manner. To make projects more manageable.

27 SCA: SCA is a verification of a configuration items com pliance with its configuration identification. Whether the procedures are followed.Whether the traceability is maintained.

28 What is SQA activities? The SQA group has responsibility for quality assurance planning, oversight, recovery keeping, analysis a nd reporting.

29 Define the role of SQA group? Prepares an SQA plan for a project. Participates in the development of the projects software process description. Reviews s/w engineering activities to verify compliance with the defined s/w process. Audits designated s/w work products. Records any noncompliance and report to senior management.

30 What do you mean by s/w reviews? It is a filter for the S.E process. Reviews are applied at various points during s/w development and serve to uncover errors and to remove the defects. It purifies the S.E activities.

31 What is the measure of reliability and availability? A simple measure of reliability is mean -time- between failures(MTBF) MTBF=MTTF + MTTR Availability is the probability that a program is operat ing according to requirement at a given point in time & it is defined as Availability = [MTTF / (MTTF + MTTR)] * 100%

32 Discuss about ISO 9162 quality factors.

ISO quality standard was developed in an attempt to identify the key quality attributes for c omputer softwares. The key quality attributes are Functionally, Reliability, Usability, Efficiency, Maintainability and portability.

33.Define QFD. QFD is quality management techniques that translate the needs of the customer into technical requirements for software. It concentrates on maximizing customer satisfaction.

34 QFD identifies three type of requirements. 1. Normal Requirements. 2. Expected Requirements. 3. Exciting Requirements

16 Marks 1. Explain the maintenance activities and the maintenance problems. How the cost of maintenance is estimated? 2. Write short notes on: i) Cocomo estimation criteria ii) Software metrics and iii) Verification and validation criteria.

3. Explain in detail about the maintenance process. 4. Discuss in detail about software evolution. 5. Describe two metrics which are used to measure the software in detail. Discuss clearly the advantages and disadvantages of these metrics. 6. Explain the cocomo approach for estimation of cost for different kinds of softwa re. 7. Explain the need for software measures and describe various metrics. 8. Explain various cost estimation models and compare. 9. Write briefly on (i) CASE (ii) Software complexity measure. 10. Write in detail about earned value analysis and error trac king.

M.C.A DEGREE EXAMINATIONS,NOVEMBER/DECEMBER2009. THIRD SEMISTER MC1703-SOFTWARE ENGINEERING (REGULATIONS 2007) Time: Three hours Maximum : 100 marks Answer ALL questions

For more question papers of MCA department CLICK PART A-(10*2=20 marks)

HERE

1.List out the four fundamental process activities. 2.State the objectives of Throw-away prototyping. 3.What are deliverable?Give examples. 4.Use-cases are better than flow chart in understanding the user requirements-why? 5.Define the term Component. 6.What is Refinement? 7.State what Functional testing is not concerned with,and what is concerned with? 8.What is validation plan? 9.What is a software test plan?Discuss. 10.Relate defects and quality. PART B-(5*16=80 marks) 11. (a) "The details of the project plan vary depending on the type of project and organization".List out and discuss the details that will be contained in almost all plans. (16) or (b) Perform a comparitive study between the Water Fall Model and Spiral Model. (16) 12.(a) Prepare a Software Requirements Specification document for a Library Management System.State the problem definition,Business Rules and any assumptions you make. (16) or (b) Develop a Use Case diagram for a Library Management Syetem.State the problem Definition,Business Rules and any assumptions you make. (16) 13. (a) (i) With relevant examples discuss the following levels of cohesion: (1) Coincidential cohesion (2) Logical cohesion (8) (ii)Explain the following levels of cohesion with relevent example. (1)Temporal cohesion (2)Procedural cohesion. (8) or (b) (i) With relevant example discuss the following levels of coupling: (1)Content coupling (2)Control coupling (8) (ii)With a relevant example discuss the following levels of coupling: (1)Stamp coupling (2)Data coupling (8) 14. (a) Describe various White Box Testing Techniques. or (b) Discuss the following Testing Techniques: (i) Integration Testing (8) (ii) Alpha Testing (4) (iii) Beta Testing. (4) 15. (a) (i) What is Software Configuration Management?Justify the need for Software Configuration Management. (8) (ii)List and discuss the various Software Configuration items. (8) or (b) What is software quality assurance?List and discuss the various software quality assurance

standards. (16)

MC 1703 SOFTWARE ENGINEERING Third Semester ( Regulation 2005) Time : Three hours Maximum : 100 marks Answer All questions.

For more question papers of MCA department CLICK PART A ( 10 x 2 = 20 marks )

HERE

1. Write the approaches for software process assessment. 2. What is the difference between systems engineering and software engineering? 3. Identify the actors and use cases in a general banking problem. 4. List out the requirements validation techniques. 5. What is OCL? What is the use of it in Object-Oriented design? 6. Enumerate the fundamental software design concepts 7. How do you define cyclomatic complexity? 8. Define testability? 9. Name the measures for reliability in software. 10. Differentiate between Errors and Defects. PART B (5 X 16 = 80 marks) 11. (a) Categories the iterative models for software process. Explain each of them in detail. (16) Or (b) What are the different types of agile process models? Explain the characteristics of each of them in detail. (16) 12. (a) (i) Explain the factors to be considered for system modeling. (8) (ii) Which of the UML diagrams are useful for system modeling. With a suitable example explain. (8) Or (b) (i) List out the analysis modeling approaches. (2) (ii) With suitable examples and required diagrammatic representation explain the following: 1. Scenario based modeling. (7) 2. Behavioral modeling. (7) 13. (a) Explain in detail about the pattern based software design. (16) Or (b) (i) Define cohesion and coupling. Explain the various types in each of them. (8) (ii) Elaborate the rules for good use interface design. (8) 14. (a) (i) Explain the various system testing methods. (8) (ii) Write notes on testing of real time environments. (8) Or (b) (i) Explain the variations in testing for OO environment. (8) (ii) Assume a problem and derive the test cases for it using the method equivalence partitioning. (8) 15. (a) (i) Write notes on statistical software quality assurance. (8) (ii) Write notes on software safety. (8) Or (b) Explain in detail about the software configuration management layered activities.

M.C.A DEGREE EXAMINATION, MAY/JUNE 2007. Third Semester MC 1703 SOFTWARE ENGINEERING (Regulation 2005) Time : Three hours Maximum: 100 marks Answer ALL questions. For more question papers of MCA department CLICK PART A (10x2 = 20 marks) 1. What is the main criterion for deciding whether or not to use the waterfall model in software development project? 2. Give the model of extreme programming process. 3. State the reason why software requirements elicitation is difficult. 4. How does state diagram represent the behavior of a computer based system? 5. Differentiate dynamic model and functional models. 6. What is control coupling? 7. What is alpha test and beta test? 8. State the problem that are encountered when top-down integration is chosen. 9. What is base line? 10. What is version control? PART B (5 x 16 = 80 marks) 11. (a) (i) Describe the spiral model of software development. (10) (ii) State the advantage and disadvantages of the evolutionary model of software development. (6) Or (b) Discuss the following agile process models (i) Adaptive software development and its life cycle. (6) (ii) Dynamic systems development (5) (iii) Serum. (5) 12. (a) Describe the seven distinct functions of requirements engineering task. (16) Or (b) Explain the different models used for analysis. Explain the sub model with an example. (16) 13. (a) Discuss the various steps involved in transform mapping and transaction mapping. (16) Or (b) Explain the various design principles that enable an interface (i) to reduce the users memory load (ii) make the interface consistent. (16) 14. (a) Discuss the various tests to be conducted for system testing. (16) Or (b) Describe how unit testing and integration testing is conducted for object oriented software. (16) 15. (a) Write short notes on : (i) Cost impact of software defect (4) (ii) defect amplification and removal (4) (iii) software reliability (4) (iv) change control. (4) Or (b) Write short notes on : (i) software configuration management (6) (ii) software quality assurance (5) (iii) quality standards. (5)

HERE

You might also like