Cab ,kcmit ,Morgan ,Nagarjuna ,Orchid B ,Prime ,SDC b ,Thames
- Define system engineering.
= System engineering encompasses all of the activities that includes procuring, specifying, designing, implementing, validating, deploying and maintaining socio technical systems.
- What are the most widely used software process models?
=The most widely used software process models are:
- Waterfall model
- Spiral model
- Define software requirement elicitation and analysis.
=Requirement Elicitation and Analysis is the process of interacting with customers and end-users to find out about the domain requirements, what services the system should provide, and the other constrains.
- What do you mean by test case?
=A TEST CASE is a set of conditions or variables under which a tester will determine whether a system under test satisfies requirements or works correctly.
- What is the difference between generic and custom software?
=Customized Software: These are the software developed by the service based company. It is delivered by the company as per your requirements, which you provided before starting of the project.
Generic Software: These software are the software developed by the product based company, who developed the software for any specific task or industry.
- What is the difference between the validation and verification?
“Are we building the product right”. The software should conform to its specification.
“Are we building the right product”. The software should do what the user really requires.
- What is the advantage of using MVC framework?
- Faster development process
- Support for asynchronous technique
- Ability to provide multiple views
- SEO friendly development platform
- What is sequence diagram?
=Sequence Diagrams are interaction diagrams that detail how operations are carried out. They capture the interaction between objects in the context of a collaboration. Sequence Diagrams are time focus and they show the order of the interaction visually by using the vertical axis of the diagram to represent time what messages are sent and when.
- What are factors affecting software maintenance cost?
- Team stability
- Contractual responsibility
- Staff skills
- Program age and structure
Q1)write any three characteristics of bad software
= 1. Writes tons of code without intermediate compiling.
- Unit testing is for noobs.
- It works attitude
Q2)what is extreme programming?
= Extreme programming (XP) is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements.
Q3)what is system procurement?
= Procurement systems often refer to software used to manage organizational spending. Typically, larger organizations have used procurement software, but software companies are beginning to cater products to smaller businesses that see the benefits of standardization.
Q4)what do you understand by software validation and verification
= software validation refers to a dynamic mechanism of validating and testing the actual product whereas Verification is a static practice of verifying documents, design, code and program.
Q5)explain alpha and beta testing
= Alpha Testing is a type of software testing performed to identify bugs before releasing the product to real users or to the public. Alpha Testing is one of the user acceptance testing.
Beta Testing is performed by real users of the software application in a real environment. Beta testing is one of the type of User Acceptance Testing.
Q6)how software hazards are identified?
= Software hazard analysis is a form of subsystem hazard analysis. It validates that specified software blackbox behavior satisfies system safety design constraints. Software Hazard Analysis checks that specified software behavior satisfies general software system safety design criteria, as well.
Q7)what do you understand by formal specifications?
=A formal software specification is a statement expressed in a language whose vocabulary, syntax, and semantics are formally defined.
Q8)why the software failures occur?
- Lack of user participation.
- Changing requirements.
- Unrealistic or unarticulated project goals.
- Inaccurate estimates of needed resources.
- Badly defined system requirements.
Q9)what is prototype?
=Software prototyping is the activity of creatingprototypes of software applications, i.e., incomplete versions of the software program being developed. It is an activity that can occur in software developmentand is comparable to prototyping as known from other fields, such as mechanical engineering or manufacturing.
- Define Generic product.
- The generic software products are stand-alone systems that are produced by a development organization and sold on the open market to any customer who is able to buy them. Ex: Microsoft Office, Windows Operating System, corel draw etc.
- Differentiate between static model and dynamic model.
- The static structural model represents the System structure along with its components that donot change in development stage of the application.Whereas the dynamic structural model represent the organization of a system components in execution.
- What is the importance of transition phase of RUP?
- Transition phase is important in RUP because it is a phase where software is released to the public. Final adjustments or updates are made based on feedback from end users to ensure that the system operates well in a real environment.
- List different reliability perspectives in socio-technical system.
– In socio-technical system, we need to consider reliability from three perspectives:
- Hardware reliability
- When do we use a client-server architecture?
- Client-server architecture is used when the data in a shared database is accessed from various geographical locations. Because the server can be replicated, it may also be used when the load to the system is variable.
- Define risk triangle.
- Risk triangle also known as Project Triangle or Iron Triangle expresses the Triple Constraint of time, cost and quality or scope that must be managed in project delivery. Each constraint is connected and moving one point of the triangle will impact the other two points.
- What are the advantages of re-use-oriented software engineering?
- Reuse-oriented software engineeringhas an obvious advantage of reducing the amount of software to be developed and therefore reduced cost and risks, and usually leads to faster delivery.
- Differentiate between event-driven modeling and data driven modeling.
- Event-driven model is a behavioural model that shows the dynamic nature of the system that keeps on changing internally and externally.Whereas data driven model shows how the data is processed as it moves through the system.
- Define the term refactoring.
- Refactoringis the process of restructuring existing computer code, changing the factoring, without changing its external behavior. Refactoring is intended to improve nonfunctional attributes of the software.
- Explain dependability properties: Availabilty and Reliabilty.
- Availability: The probability that a system, at a point, will be operational and able to deliver the requested services.
- Reliabilty: The Probabilty of failure-free operation over a specified time, in a given environment, for a specific purpose.
- Different between system engineering and Software engineering ?
- Systems engineering is an interdisciplinary field of engineering that focuses on how to design and manage complex engineering projects over their life cycles.Software Engineering is the study and application of engineering to the design, development, and maintenance of software.
- what do you mean by socio technical system ?
- A socio-technical system(STS) is one that considers requirements spanning hardware, software, personal, and community aspects
- What is test first development?
- Test first development is a development technique where you must first write a test that fails before you write new functional code
- List different types of Maintenance ?
- Corrective 2) preventive 3) Predictive 4)Condition based
- What is black box testing?
- BLACK BOX TESTING, also known as Behavioral Testing, is a software testingmethod in which the internal structure/design/implementation of the item being tested is not known to the testes.
- List the Some essential attributes of good software.
- Dependability and security
- Different between verification and validation .
- Validationis the process of checking whether the specification captures the customer’s needs, while verification is the process of checking that the software meets the specification.
- What is requirement engineering?
- Requirementsanalysis, also called requirements engineering, is the process of determining user expectations for a new or modified product.
- Define risk triangle and when it is used?
- Risk Triangle can be defined as intolerable risk, as los as regionable practical (ALARP) and acceptable region .
- List out the principle factors that affect cost of system engineering.
- Product characteristics
- Required software reliability
- Database size
- Complexity product
- Programmer capability
- What are the attributes of good software?
The attributes of good software are as follow:
- Differentiate between software engineering and system engineering?
- Software engineeringhighly focuses on implementing quality softwarewhile system engineers highly concern about the users and domains.
- Software engineersfocus solely on softwarecomponents while system engineering deals with a substantial amount of physical component of
- What is Rapid application Development?
Rapid Application Development focuses on rapid prototyping, development and deployment of any application. Rapid application development (RAD), an agile project management strategy, offers fast project turnaround in fast-paced environments.
- What do you mean by requirement specification?
Requirements specification is a rigorous assessment of requirements before the more specific system design stages, and its goal is to reduce later redesign.
- Differentiate between Event driven modeling and model driven engineering?
Model-driven engineering (MDE) is an approach to software development where models rather than programs are the principal outputs of the development process. The programs that execute on a hardware/software platform are then generated automatically from the models.
Event-driven modeling shows how a system responds to external and internal events. Real-time systems are often event-driven, with minimal data processing.
- What do you mean by design Pattern? Why it is used?
A design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern isn’t a finished design that can be transformed directly into code. It is used to description or template for how to solve a problem that can be used in many different situations.
- What do you mean by software verification and validation?
Software verification is a discipline of software engineering whose goal is to assure that software fully satisfies all the expected requirements.
Software validation checks that the software product satisfies or fits the intended use (high-level checking), i.e., the software meets the user requirements, not as specification artifacts or as needs of those who will operate the software only; but, as the needs of all the stakeholders (such as users, operators, administrators, managers, investors, etc.).
- What do you mean by alpha testing and beta testing?
Alpha testing is a type of testing that is done on an application towards the end of a development process when the product is almost in a usable state.
A beta test is the second phase of software testing in which a sampling of the intended audience tries the product out.
- Differentiate between safety and security of a system?
The term safety is broadly used to refer to the protection of individuals, organizations, and assets against external threats and criminal activities that can be directed to such entities hence rendering them inactive. It is important to note that security is highly focused on the deliberate actions that are geared towards inflicting harm to an individual, organization, or even assets.
The term safety is used to refer to the condition of being protected from the aspects that are likely to cause harm. In addition, the term safety can be used to refer to the state at which one has the control of the risk causing aspects hence protecting himself or herself against risk that is fully unintended.
- Define socio technical system?
Sociotechnical system is an approach to complex organizational work design that recognizes the interaction between people and technology in workplaces. The term also refers to the interaction between society’s complex infrastructures and human behavior.
Software engineering involves wider responsibilities than simply the application of technical skills. Software engineers must behave in an honest and ethically responsible way if they are to be respected as professionals. Ethical behaviour is more than simply upholding the law. So software engineers should ethically behave.
3.Software need to be validated because:
- It ensures that the softwarehas been built in conformance with the requirements of the customer.
- Helps catch errors that were missed or overlooked during the software
The principles of agile are:
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
6.ALARP, which stands for “as low as reasonably practicable”, or ALARA (“as low as reasonably achievable”), is a term often used in the regulation and management of safety-critical and safety-involved systems.
Advantages of inspection over testing:
- During testing, errors can mask other errors. When an error leads to unexpected outputs, you can never be sure if later output anomalies are due to a new error or are side effects of the original error. Because inspection is a static process, you don’t have to be concerned with interactions between errors. Consequently, a single inspection session can discover many errors in a system.
- Incomplete versions of a system can be inspected without additional costs. If a program is incomplete, then you need to develop specialized test harnesses to test the parts that are available. This obviously adds to the system development costs.
- As well as searching for program defects, an inspection can also consider broader quality attributes of a program, such as compliance with standards, portability, and maintainability. You can look for inefficiencies, inappropriate algorithms, and poor programming style that could make the system difficult to maintain and update.
Scrum is an agile process framework for managing complex knowledge work, with an initial emphasis on software development, although it has been used in other fields and is slowly starting to be explored for other complex work, research and advanced technologies
- BLACK BOX TESTING, also known as Behavioral Testing, is a software testing method in which the internal structure/design/implementation of the item being tested is not known to the tester.
- A prototypeis an early sample, model, or release of a product built to test a concept or process. Prototypes are generally used to test an idea in an existing system or before a real system is established. The goal of the prototype is to prove whether the components that will also be in the final system will work together as expected.
- Test-driven development (TDD) is a software development processthat relies on the repetition of a very short development cycle: requirements are turned into very specific test cases, then the software is improved so that the tests pass.
- We can measure reliability
- Easily accessible
- Respond time is short
- System hacker free
- The main purpose of this acceptance testing is to evaluate the system’s compliance with the business requirements and verify if it is having met the required criteria for delivery to end users.
- A behavioural model shows the interactions between objects to produce some particular system behaviour that is specified as a use-case.
- Generalization is a bottom-up approach in which two lower level entities combine to form a higher-level entity. In generalization, the higher-level entity can also combine with other lower level entities to make further higher-level entity.
Specialization is opposite to Generalization. It is a top-down approach in which one higher level entity can be broken down into two lower level entity. In specialization, a higher-level entity may not have any lower-level entity sets, it’s possible.
- Non-functional requirement (NFR) is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors.
Typical non-functional requirements include:
- Performance – for example: response time, throughput, utilization, static volumetric