The document defines key concepts in systems and software engineering, including the characteristics of systems, types of systems, and the software development process. It discusses various system types such as open and closed systems, as well as the importance of software quality factors and the software life cycle model (SDLC). Additionally, it highlights the roles of different software systems, including decision support systems and expert systems, and outlines the significance of software engineering practices.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
5 views18 pages
Rohit Se 3-2
The document defines key concepts in systems and software engineering, including the characteristics of systems, types of systems, and the software development process. It discusses various system types such as open and closed systems, as well as the importance of software quality factors and the software life cycle model (SDLC). Additionally, it highlights the roles of different software systems, including decision support systems and expert systems, and outlines the significance of software engineering practices.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18
DEFINITION OF SYSTEM :- A system is 2)ENTROPY :- entropy means loss of
defined as, ”a collection of related energy. 3)process, output and cycle:-
components that interface to perform a open system procedure useful output task in order to accomplish goal”. and operate in cycle following a SUB SYSTEM:- A component is either a continuous flow path. complex part or an aggregate of part, INTERFACE :- an interface is a shared also called a sub-system. boundary across which two or more CHARACTERISTIC OF SYSTEM :- separate components of a computer 1)Organization:-It implies structure and system exchange information. order. It is the arrangement of FEEDBACK:- Feedback is an event that components that helps to achieve occurs when the output of a system is objectives. 2)Interaction:-It refers to used as input back into the system as the manner in which each component part of a chain of cause and effect. functions with other components of the system. 3)Interdependence:-It means CONTROL:- Software control is the that parts of the organization or process of the physical storage in a computer system depend on one definitive software library of all another. 4)Integration: It refers to the software to ensure that only correctly holism of systems. It is concerned with released, licensed, and authorized how a system is tied together. versions of software are in use. DIFFERENCE BETWEEN PHYSICAL AND BOUNDARY :- A system boundary is a ABSTRACT rectangle that you can draw in a use- Physical systems are tangible entities. case diagram to separate the use cases We can touch and feel them. Physical that are internal to a system from the System may be static or dynamic in actors that are external to the system. nature. FORMAL SYSTEM :-Formal methods Abstract systems are non-physical are system design techniques that use entities or conceptual that may be rigorously specified mathematical formulas, representation or model of a models to build software and hardware real system. systems. OPEN SYSTEM :- An open system is a An expert system is a computer state, in which a system continuously program that uses artificial intelligence interacts with its environment. (AI) technologies to simulate the CLOSED SYSTEM :- A system which does judgment and behavior of a human or not interact with the outside an organization that has expertise and environment is know as the closed experience in a particular field. system. INPUT AND OUTPUT is an information OPEN SYSTEM CHARACTERISTIC :- processing system designed to send 1)input from outside: open system are and self adjusting and self regulating. receive data from a computer hardware Degree of independence. component, device, or network. 4) Natural and artificial systems :- NATURAL SYSTEM:- Systems which Nature system exist and also bound in are in the environment made by nature like rivers, mountains etc. nature are called natural system. 5)Man-machine system or man-made ELEMENTS OF SYSTEM :- All the information system :- Generally most of characteristics of the system are artificial system are main-machine determined by the system elements system. their properties and relationship. The basic system elements are input, CBIS:- Computer Based Information processor and output:- 1)Input are the System (CBIS) is an information system information that enters into the system in which the computer plays a major for processing while output is the role. outcome of processing. OAS :- office automation system are 2)Processor(s) :- It is the operational among the newest and most rapidly component of a system and involves extending computer based information the actual transformation of input into system. output. A Decision support system(DSS) :- 3)control:- This control elements guide 1)DSS system make use of analytical the system. 4)Feedback :- is a method planning modules. 2)DSS mostly used that helps to compare output produced for assisting top-level management in with output expected and make decision making. 3)DSS also save cost necessary changes in the process or and time. input in order to reduce the difference Benefits of DSS:- between output produced and output 1)DSS improving personal efficiency. expected. 2)DSS improving problem solving. 3)DSS increasing organizational control.
TYPES OF SYSTEM :- Transaction Processing System(TPS)
1)Coceptual(abstract) and physical 1)this is most fundamental computer system based system in an organization. - the conceptual system is also know an 2)This relates to the processing of abstract or analytical system. It is non- business transaction. 3)a system that physical system. captures, classifies, stores, maintains, 2)DETERMINISTIC AND PROBABILITY updates, and retrieve transaction data SYSTEM :- A deterministic system works for record keeping and input to the in predictable manner. other types of CBIS. 3)OPEN AND CLOSE SYSTEM :- Another Management information system :- A classification of system is based on MIS their is a system that provides historical information, information on the current 2.INTRODUCTION TO SOFTWARE status. It is a communication process in ENGENEERING. which data are recorded and processed 1.Software engenee defn: it is the for further operational uses. technological and managerial discipline concerned with systematic production Expert system :- This is also called and maintenance of software products knowledge based system. It is a set of which all developed and modified on computer program that perform a task time within the cost estimates. at level of a human expert. 2.characteristics of software: There are various characteristics of software as Executive information system(EIS) explained below:1.Software is or This system also called an Executive Engineered; Software is not information system(EIS). It is made manufactured in the Classical Sense: especially for top managers that There are some similarities between specifically supports strategic decision software development and hardware making . manufacturing that is high quality is achieved through good design. but the System components :- A system is a manufacturing phase for hardware can group of interrelated components introduce quality problems that are working together toward a common non- existence (or easily correted) for goal or objective by accepting inputs software. 2. Software does not Wear and producing outputs in an organized Out: • The relationship often called the transformation process. %athtub curve' indicates that hardware exhibits relatively high failure rates early in its life. defects arc Corrected and the failure rate drops to a Study state level tor some period Of time. 3. Most Software is custom Built. rather than being assembled from existing components: • As an engineering discipline evolves, a Collection Of Standard deign componeb=nts arev designed. 3. SOFTWARE APPLICATION DOMAINS: A domain defines a set Of common requirements terminology, functionality for any software program constructed to solve a problem in the area Of computer programming environment DBMS 1. System Software: System software is 4.LAYERED TECHNOLOGY OF a collection of programs written to SOFTWARE ENGINEERING:software service other pmgrams. • Examples; engineering is acut growth of hardware Compilers, File Management Utilities, and system engineering. Software Deviée Drivers. Editors and Operating engineering can be viewed as a layered Systems. 2. Application Software: technology. Application software is a stand-alone These elements of software layered program. It solves a specific business technology are explained below: requirement. It uses technical data 1.A Quality process layer: An Which facilitates business operations. engineering approach must have a Examples: Real-time manufacturing focus on quality which provide a Proces control, Payroll system etc. 3. continuous proces improvement Engineering/Scientif1c Software: culture. Software prodiuct should fulfill Engineering/scientific software uses the customer quality requirements (Le various number crunching algorithms. efficiency, reliabüty. etc).developer Applications range from astronomy to quality requirements (maintainability. volcanology, from automotive stress reunbility. etc). users (unbiljty. etc). 2. analysis to space shuttle orbital Process Layer: Foundation for Software dynamics etc. But new applications Engineering is the Process Layer. may not base on the Conventional Software Engineerins process holds an numerical algorithms. Examples: the technology layers together and System simulation. Computer Added enable the timely development of Design (CAD), etc. 4. Embedded computer software. It forms the base Software: • Embedded software resides for management control of software within a system or product It is uséd to project. 3.Methods Layer: it provide implement and control features and technical knowledge for developing functions for the end-user for the software. The method layer covers a system itself. • Embedded. software broad array of tasks which include can perform limited and esoteric requirements analysis. design. coding. functions. testing and maintenance phase of the 5. Product Line Software product Line software development. 4. Tools Layer: software is developed and designed to It provide automated or semi- provide a specific capability for used by automated support for the Process and different customers. • It can focus on Method layer. tools are used to bring limited and estoric market place like automation In software development Inventory control products Examples: process tools are integrated in such a Spreadsheets. Software for way that other tools can use Entertainmet .Business financial information by one i.e. Computer- applications. Computer Multimedia. Aided Software Engineering . be usable if human users find it easy to use. (iv) Integrity: Integrity refers to the 5. MCALLS QUALITY FACTORS: • Quality extent to which access to software or factor refers to the characteristics of a data by unauthorized persons or product or service which denne its programs can be controlled. ability to satisfy uær requirements. In (v) Efficiency: The amount of computing software engineering. software quality resources and code required by a depends on various characteristics such program to perform its function. as correctness. reliability and efficiency. 2. Product Revision: It checks whether These characteristics are used as a the software requires effort to modify. checklist to implement quality in It includes following factors: software and ensure that the software (i) Maintainability: The effort required meets all the quality standards and to locate and fix errors in a program. specifications. The term software maintenance is • These factors focus on following three commonly used to refer to the important aspects Of a software modifications that are made to a product1. Its operational software system after initial release. characteristics. 2. Its ability to undergo (ii) Flexibility: Efforts required to change. 3. Its adaptability to new modify an operational program. environments. (iii) Testability: Effort required to test a 1. product Operation: It checks whether program to ensure that it performs its the software is able to perform the intended function. function efficiently. It omprises the 6.QUALITY CRTERIA:• A quality criteria following: is an attribute of a quality factor that Is (i) Correctness: The extent to which the related to software development. For program Satisfies its specifications and example, modularity Is an attribute of fulfills the user's mission objectives. A the architecture of a software system. software system is said to be List of Quality Criteria: L Access to functionally correct if the system Audit: Ease with Which the software satisfies all the functional and data can e checked for compliance requirements. with standards. 2. Accuracy: Precisions (ii) Reliability: The extent to which a of computations and output. 3. Access pmgram can be expected to perform its Control: Provisions for control and intended function with required protection Of the software 4. precision. The efforts '15th which the Completeness: Degree to which full software is expected to perform its implementation Of required specified function accurately. functionalities have been achieved 5. (Ill) Usability The effort. with which Communicativeness: Ease with which software programs are understood and the inputs and outputs can be operated. A software is considered to integrated. 6. Conciseness: Compactness of the source code, In Rapidity: The speed with which the terms of unes Of code 7. Execution complete software can be delivered efflciency: Run time effidency ofthe with given specification. software. 8. Expandability: Degree to which storage requirements or 8.SOftware Process Model: • Aprocess software functions can be expanded. model provides a basis for controlling 7. THE SOFTWARE PROCESS: • Software various activities required to develop development process Is defined as, "a and maintain the software. collection of procedures to develop the • A software process model is defined software product according to certain as, •a strategy (software engineering goals or standards. • Generally. the paradigm), comprising process, following points are noted about the methods and tools layers as well as the software process. It includes guidelines general phases for developing the which explain the objectives of each software." activity. 2. It includes various technical and managerial issues that are required 9. SOFTWARE ENGINEERING PRACTICE: to develq the software. 3. It uses The framework activities and umbrella resources subject to given constraints activities establish a skeleton and produces intermediate and final architecture for software Engineering products. 4. It is carried out with an work 2.Software Engineering Practice is entry and exit criteria that help in a collection of concepts, principles, monitoring the beginning and methods, and tools that a software completion (ending) Of the activity. engineer calls upon on a daily basis.3. CHARACTERISTIC OF SOFTWARE This practice allows managers to PROCESS: The characterlstia of manage software projects and software software processes are listed below: 1. engineers to build computer Understandability: The extent to which programs.4. It provides necessary the process is explicitly defined and the technical and management how to ease, simple with which the process getting the job done. 5.Practice definition is understood. 2. Visibility: transforms a disorganized. unfocused Whether the software process activities approach into something that is more culminate in clear result or output so organized, more real. efficient and that the pmgress of the process is more likely to achieve success. visible externally. 3. Supportability: The 6.Principles are important because of extent to which CASE tools can support they help us to establish a mind set for the process activitie 4. Reliability: The solid Software engineering practice. manner In which the software process 7.This section discusses the essence of Is designed such that errors in the practice and general (core) principles. process aN avoided (trapped) before they result in in the product. 5. 9. UMBRELLA ACTIVITIES :In addition to SDLC :- A software life cycle model is a frame activities proicess framework particular abstraction that represents a also comprises a set of activities known software life cycle. A software life cycle asd umbrella activities which are used model is often called a software through th software process. development life cycle (SDLC). These umbrella activities are explained Activities of SDLC :- The process used to below: create a software product from scratch 1.Software Project Tracking and to its public release is called Sofware Control. This activity monitors the Development Process model. The actual procesthat the management can period of time during which these take necessary steps if the software activities take place are called phases. project move away from the plans laid ADVANTAGES OF SDLC :- 1)A common down. It involves tracking procedures vocabulary for each steps. 2)Defined and reviews to whether the software communication channels between project is according to user development teams and stakeholders. requirements 3)Clearly-defined inputs and outputs 2.Formal Technical reviews: this activity from one step to the next. 4)clear roles consider the code, product' and and responsibilities among developers. documents Of software engineering Designers, business analysts, and practiæ to detect and remove errors. project managers. 3. Software Quality Assurance (SQA): SYSTEM ANALYSIS :- 1)System analysis This activity assures that the software is is the process of examination of the according to the user requirements. In problem. 2)It is related with identifying addition, it is used to evaluate the all the constrains and influences. 3)It processes of developing and deals with data collection and a detail maintaining the quality of the software. evaluation of current system. 4)It gives 4. Reusability Management: This logical model of the system through activity determines the criteria for data flow diagrams and data dictionary product's re- use and establishes etc. mechanisms to achieve reusable SYSTEM DESIGN :- 1)System design is components. the creation as the system which is the S. Software Configuration Management solution of the problem. 2)It is related (SCM): SCM manages the changes made with the co-ordination of the activities, in the software processes throughout job procedures and equipment the life cycle of the software project. It utilization in order to achieves system also controls changes made to the goals. 3)It deals with general and configuration and maintains the detailed design specification of input, integrity of the software. output files and procedures. 4)It provides technical with which the and tested incrementally unit the problem can be tackled. product is finished.” GENERIC PROCESS MODEL :- A process Evolutionary process model :- model is defined as “a model of a Evolutionary model are iterative. They process system that describes process are characterized in a manner that organization, categorization, hierarchy, enables you to develop increasingly interrelationship, and tailorability”. more complete version of the software. PRESCRIPTIVE PROCESS MODEL :- A Prototyping model :- The software prescriptive process model defines as prototyping refers to building software “a distinct set of activities, actions, application prototype which display the tasks, milestones, and work products functionality of the product under that are required to engineer high- development but may not actually hold quality software. There are three types the exact logic of the original software. of prescriptive process model :- Cycle of any prototyping model :- 1)Waterfall model. 2)Incremental 1)Requirement gathering. 2)Quick process model. 3)Evolutionary process Design. 3)Building prototype. 4)User model. evaluation. 5)Refining prototype. Waterfall model :- The waterfall life 6)Engineer product. cycle model is defined as, “the model of TYPES OF PROTOTYPE MODEL :- building in stages, whereby one stages 1)Rapid Throwaway prototyping :- In is completed before the next stage this method, the prototyping is beings”. developed rapidly based on the initial ADVANTAGES OF WATERFALL MODEL:- requirement and gives to the client for 1) This model is more flexible to change review. scope and requirements. 2)Evolutionary prototyping :- In this 2) It is easier to test and debug during a method, a prototype is made, and the smaller iteration. 3) In this model, client feedback is received. customer can respond to each built. 4) 3)Incremental prototyping :- In the end, Lowers initial delivery cost. all the parts are merged which becomes Disadvantages OF WATERFALL MODEL:- a final product. 1)Needs good planning and design. 4)Extreme prototype :- This type of 2)Needs a clear and complete definition prototyping model is mainly used for of the whole system before it can be web application. broken down and built incrementally. Advantages Of Prototyping :- 3)Total cost is higher than waterfall 1)The development process of this model. model users are actively involved. Incremental process model :- The 2)Error are detected must earlier. incremental model is define as, “ a 3)Gives quick user feedback for better model of software development where solutions. 4)It also identifies confusing the product is designed, implemented or difficult functions. SPIRAL MODEL :- A model of the REQUIREMENT ENGINEERING is defined software development process in which as, "the systematic process of the constituent activities, typical documenting requirements through an requirements analysis, preliminary and interactive co-operative process of detailed design, coding , integration analyzing the problem, documenting and testing are performed iteratively the resulting observations in a variety until the software is complete. of representation format, and checking ADVANTAGES OF SPIRAL MODEL :- the accuracy of the understanding 1)The spiral model accommodates life- gain." cycle evaluation, growth and TYPES OF REQUIREMENT :- requirement changes. 2)It focuses on 1)Functional Requirements :- IEEE early error detection and design flaws. defines function requirements as, "a 3)It incorporates prototyping as risk- function that a system or component reduction strategy. must be able to perform". DISADVANTAGES OF SPIRAL MODEL :- 2) Non-Functional Requirements:- 1)spiral model can be a costly model to The non-functional requirements also used. 2)It is not suitable for low risk known as quality requirements relate projects. 3)Risk analysis in this model to system attributes, such as reliability requires highly specific expertise. and response time. CONCURRENT MODEL :- The concurrent 3) Domain Requirements :- process model define a series of events In software engineering, the that will trigger transitions from state requirements that are derived from the to state for each of the software application domain of a system, instead engineering activities, actions or tasks. from the needs of the users, are known ADVANTAGES OF CONCURRENT MODEL as Domain Requirements. 1)It is flexible. 2)This model gives Requirement Engineering(RE) process:- immediate feedback from testing. The process to determine the 3)this model has applicable for all kinds requirement specification of the of development process. software is called the Requirement DISADVANTAGES OF CONCURRENT Engineering (RE) process MODEL :-1)analysis and designs are TYPES OF REQUREMENT :- complex task according to requirement. 1) INCEPTION:- Inception means 'the 2)they focus mainly on flexibility and commencement/beginning' and it tells not on quality. about how does software project gets initialized. 2)ELICITATION :- Elicitation means asking the customer, the user, and other people about the objectives for system or products in other words, This is also known as the gathering of REQUIREMENT GATHERING :- requirements. Software requirement gathering is ELABORATION :- elaboration means subdomain of software requirement refinement of requirement analysis and engineering of software engineering. design. Elaborate focuses on Requirement gathering / Elicitation: developing a refined technical model of 1)Involves customer interaction with software functions, features, and the development team. 2)Collects all constrains. relevant information regarding the NEGOTIATION :- In this task , the software which is to be developed from software engineer reconciles the the user requirement.3)Combines all conflicts between what the customer the aspects of problem solving, wants and what can be achieved given elaboration, negotiation, and limited business resources. specification. SPECIFICATION:- Specification is the final work product produced by the FEASIBILITY STUDY :- requirements engineers. It means 1)Feasibility is the practical extent to different things to different people. A which a project can be performed standard template should be developed successfully.2) To evaluate feasibility, a and used. feasibility study is performed, which REQUIREMENT MANAGEMENT :- determines whether the solution Requirement Management is define as , considered to accomplish the “the process of controlling and tracking requirements is practical and workable change in the requirements during the in the software. requirement engineering(RE) process TYPES OF FEASIBILITY :- and system development. 1)Technical Feasibility:- Technical REQUREMENT ENGINEERING :- is feasibility refers, "to the technical actually a matter of conducting resources needed to develop, purchase, meaningful conversation with install, or operate the system". colleagues who are members of the 2) Operational Feasibility:- Operational team. feasibility means that, "a proposed system will be used effectively after it has been developed". 3) Economic Feasibility:- It determines whether the required software is capable of generating financial gains for an organization. INTERVIEW :- interview is the best method for producing qualitative OBSERVATION :- Unlike the other fact information such as opinions, polices, finding techniques, in this method the subjective descriptions of activities and team of experts visit the customer's problems. Interviews are strong organization or workplace. Analysts medium to collect requirements from observe the actual working of the individuals or from group. existing installed systems or manual TYPES OF INTERVIEWS :- system. 1)Structured (Closed) Interviews: In this type, every single information to gather SOFTWARE REQUIREMENTS is decided in advance. 2)Unstructured SPECIFICATION (SRS) :- (Open) Interview: In this type the A software requirements specification information to gather is not decided in (SRS) is a document that captures advance, more flexible and less biased. complete description about how the system is expected to perform. QUESTIONNAIRES :- 1)It is the technique used to extract information CHARACTERISTICS OF SRS: from large number of people. This Various characteristics of SRS are:- technique can be adopted and used 1) Correct:- The SRS should be made up only by a skillful system analyst. 2) A to date when appropriate requirements document with pre-defined set of are identified. 2) Unambiguous:- When objective questions and respective the requirements are correctly options is handed over to all customers understood then only it is possible to to answer, which are collected and write an unambiguous SRS. compiled. 3) Complete:- To make the SRS complete, it should be specified what a RECORD VIEW :- 1) Records and reports software designer wants to create a are the collection of information and software. 4) Consistent:- It should be data about the system and its consistent with reference to the operations. 2) The information related functionalities identified. to the system is available in documents, newspapers, magazines, journals, electronic media etc. 3) This record review helps the analyst to get valuable information about the system and the organization. 4) The analyst may examine the records either at the beginning of the study which may give him a fair and perfect data about the system. DECISION TREE AND DECISION TABLE 1 A Decision Table does not show the Decision-making is an integral part of flow of logic for the solution to a given any organization no matter how small, problem. single or big and complex it may be. 2. If there are too many alternatives, it Thus, decisions have to be made and is difficult to list in decision table set procedures are DATA FLOW DIAGRAMS to be followed as the subsequent IEEE defines Data Flow Diagram (DFD) actions. as, "a diagram that depicts data Decision Tree sources, data storage, and processes A decision tree is a decision support performed on data as nodes, and analysis and design tool that uses a logical flow of data as links between tree-likegraph or model of decisions the nudes." and their possible consequences. The Data Flow Diagram is a graphical Decision tree is a diagram that representation of the flow of data represents conditions and actions through an information system. sequentially. It shows which condition Advantages of Data Flow Diagrams to consider first, which second and so (DFDs): 1. A simple graphical technique oh. It also shows therelationship of which is easy to understand by each condition and its permissible technical and non technical users. 2. It actions. is useful for communicating current Advantages of Decision Tree: system knowledge to the users. 3. A 1. Decision ees are simple to DFD is used as the part of system understand and interpret. documentation file. 2. It helps the analyst to identify the Disadvantages of Data Flow Diagrams actual decision to be made. (DEDs): 1. Data flow diagram undergoes Disadvantages of Decision Tree: lot of alteration before going to users, Analysis and Design Tok so makes the process little slow. 2. The 1. A large number of branches with DFD takes a long time to create. 3. many paths will confuse rather than Physical considerations are left out in help in analysis. 2. Large decision trees DFD. can be hard to interpret. DATA DICTIONARY Advantages of Decision Table: A data dictionary refers to, "a collection 1. A decision table can be changed of descriptions of the data objects or according to situation 2. A decision items in a system table provides a framework for a Advantages and Disadvantages of DD complete and accurate statement of 1. ADD manage the details in large processing or decision logic systems and DD improves consistency. Disadvantages of Decision Table: 2. It is used to locate omissions and errors in the system. 3. ADD is used to communicate 4. Interactive Outputs: It involves the common meaning for all system user communicating directly with elements computer. Disadvantages DD: PSEUDOCODE :Pseudocode is made up 1. For large organization, a DD is grows of two words 'pseudo and code'. rapidly in size and complexity. 2. A DD Pseudo means imitation or false and is difficult to maintain manually. 3. code refers to instructions, written in a Some users and analysts who may use programming language. Pseudocode is other methods find it difficult to simply a way to communicate relearn their trade and start to use DDs. specifications to programmers or users. Types of Outputs Pseudocode is a compact and informal The users of output generated by a high-level description of a computer computer can be varied. For example, programining algorithm that uses the to a computer manufacturer, a structural conventions of some computer using firm is a user. To the programming language. computer services section of an Advantages of Pseudocode: organization, anyone external to the 1. Writing of pseudocode involves section who receives output forms the much less time and effort. 2. computer. Pseudocode reduces complexity. 3. It is Output can be categorized as follows: easier to modify the pseudocode of 1. External Outputs: These outputs are program logic whenever program received by entities outside the modifications are necessary organization like invoices, orders, etc. Special attention is given to the format, content, and organization of these kinds of outputs as they directly have a bearing on the Disadvantages of Pseudocode: organization's business relations with 1 In case of pseudocode, a graphic its customers. representation of program logic is not 2. Internal Outputs: These outputs are available 2. There are no standard rules received by people within the to follow in using pseudocode. 3. organization and require careful Different programmers use their own consideration because they may affect style of writing pseudocode and hence the operational of the system. communication problems occur due to 3. Computer Operations Outputs. lack of standardization These outputs are used within the Coupling computer services department such as In the system which uses functional usage statistics, control reports, etc. abstraction, coupling and cohesion are the the criteria's for modularization. • The two modules are independent if 3. Walk dog.4. Have a juice. 5. Get out they can function completely without of bed. the presence of other modules. If they Procedural Cohesion are independent, they are solvable and Commonly found this module at the modifiable separately. top of hierarchy, such as the main Stamp Coupling: program module. This module it one Two normally coupled modules are whose elements are involved la stamp coupled it one passes to other different and possible unrelated with This term was introduced by activities in which control flows from Myers in 1975. composite plece of data. each activity to the next That is a piece of data with meaningful Temporal Cohesion This module is one structure is passes for example, the whose elements are involved in composite data might be a customer- activities that are related in time. record comprising many fields. Logical Cohesion Cohesion This is one whose elements contribute Cohesion of the module determines to activities of same general category. how tightly it will be coupled to other In these activities, only selected modules in a system. Cohesion tells up activities are from outside the module. about the bound of internal elements Functional Cohesion: It contains of the module. elements those contribute to the Features of Cohesion: execution of one and only one 1. Elements that contribute to cohesion problegreater cohesion gives related are: instructions, groups definition, call task. For of another module 2 We aim for 2. Sequential Cohesion This module is strongly cohesive modules. of one whose elements are involved in instructions, data Analysis and Design activities such that the output data any Tools module belong Everything in Fo into modules.The idea of module should be related to one T from one activity serves as input data another-focus on the task Strong to the next activity. cohesion will reduce relations between The sequence of steps might be modules-minimise coupling. Cohesion something like this. 1. Take a pot. is the measure of the strength of 2. Put sugar, tea powder, and water. functional relatedness of elements 3. Put milk. within a module. Elements mean an instruction. . The sequentially cohesive module has Coincidental Cohesion This module is good coupling and easily maintained. one whose elements contribute to the The disadvantage is it is not so readily activities with no meaningful reusable in the same system. relationship to one another. For level. el of example:1. Fix car. 2. Bake cake. 4. Switch on gas. 5. Put the pot on the flame. 6. Switch below: 1. Identify system inputs and off gas if it boils. review logical requirements. This group of activities cannot be 2. Select appropriate GUI (Graphical summed up as a single function. It User Interface) controls. means, the module is not functionally 3. Design, validate and test inputs using cohesive. some combination of 1) Layout tools Communicational Cohesion (e.g., hand sketches, printer/display This is the module in which the layout chart, or CASE) elements contribute to activities that ii) Prototyping tools (e.g., spreadsheet, use the same input or output data. PC DBMS, 4GL) 4. If necessary, design Suppose we want to find facts about a the source document. book, we may see Common (Alias Global) Coupling This is the coupling which stays outside the bounds of good modularity. The two modules are common coupled if they refer to the same global data area. Control Coupling Two modules are control coupled if one passes a piece of information intended to control the internal logic of the other to the other module. The value of flag indicates to SYSTEM INPUT/OUTPUT CONTROL which record to rend STRUCTURED DESIGN CONCEPTS The structured design is a disciplined approach to computer system design. Structured design was developed by Ed Yourdon and Larry Constantine. This technique deals with the size and complexity of a program by breaking up the . program into a hierarchy of modules which result in a computer program. These modules are easier to implement and maintain. Process of Input Design The following steps are to be followed during the process of input design are given AGILITY is the capability to manage couple of months, with a preference to various kinds of changes during the the shorter timescale. Principle #4: development process.Agility is Developing team and developers must dynamic, content specific, aggressively work together daily throughout the change embracing and growth oriented project. team able to appropriately respond to Principle #5: Build projects around changes. motivated individuals. Give them the Human Factors For Agile Process : environment and support they need, 1. Competence: Competence in the and trust them to get the job done. agile development context includes ADVANTAGES OF AGILE: natural talent and specific software 1. Change is included: With shorter related skills with overall technical planning cycles, it is easy and to knowledge. 2. Collaboration: Software accommodate and accept changes at development is about analyzing, any time during the software project. 2. assessing and using information that is End-goal can be unknown: Agile is very communicated to the software project beneficial for projects where the end- development team. Team members goal is not clearly defined. As the must collaborate with each other to project progresses, the goals will come have smooth development of software. to light and development can easily and 3.Decision Making Ability: The project simply adapt to these evolving team must be allowed the freedom to requirements. 3. Faster and High- control its own destiny, so they can quality Delivery: Breaking down the take individual decision on various project into iterations (manageable issues.4. Mutual Trust and Respect: The units) allows the software team to agile software project team must focus on high-quality development, become DeMarco called a "jelled" team with faster delivery.4. Strong Team shows respect and trust which is Interaction: Agile highlights the necessary to make them strongly importance of frequent communication connected. and face-to-face interactions. Teams PRINCIPLES FOR AGILE PROCESS : work together and people are to take Principle #1: In this methodology, responsibility and own parts of the highest priority is to satisfy the projects. customer through early and continuous DISADVANTAGES OF AGILE: delivery of valuable software. Principle 1. Planning can be Less Concrete: Agile #2: Accept changing requirements, is based on time-boxed delivery and even late in development. Agile project managers are often processes harness change for the reprioritizing tasks, it is possible that customer's co!npetitive advantage. a some items originally scheduled for Principle #3: Deliver working software delivery may not be complete in time. frequently, from a couple of weeks to a 2. Team must be Knowledgeable: Agile teams are usually small, so team Programming promotes high customer members must be highly skilled in a involvement, rapid feedback loops, variety of areas. 3. Time Commitment continuous testing, continuous from Developers: Active involvement planning, and close teamwork to and collaboration is required deliver working software at very throughout the Agile process, which is frequent intervals, typically every 1-3 more time consuming than a traditional weeks. Extreme Programming approach. emphasizes teamwork. Managers, 4. Final Product can be very different: customers, and developers together Agile is so flexible, new iterations may make a team. be added based on evolving customer ADVANTAGES OF THE DSDM: feedback, which can lead to a very 1. DSDM provides a technique- different final deliverable. independent process and flexible in terms of requirement evolution.2. SCRUM: Scrum is an iterative and DSDM designed from the grounded up incremental agile software by business people, so the business development framework for managing value is identified an expected to be software projects and product or the highest priority deliverable. 3. application development. Its focus is on DSDM incorporates stakeholders into a flexible, holistic product development the development process.4. An strategy where a development team emphasis as DSDM on testing is so works as a unit to reach a common strong that at least one tester is goal" as opposed to a "traditional, expected to be on each project team. sequential approach". This improves software quality and EXTREME PROGRAMMING(XP): performance. Extreme Programming is a set of DISADVANTAGES OF THE DSDM: 1. practices that conforms to the values DSDM focuses on RAD, which can lead and principles of Agile. XP is a discrete to decrease in code robustness2. It method, whereas Agile is a requires significant user involvement.3. classification. There are many Agile DSDM requires a skilled development methods, XP is just one of them. Kent team in both the business and technical Beck's basic idea was, "Take observed areas. effective team practices' and 'Push ADAPTIVE SOFTWARE DEVELOPMENT them to extreme level'. XP is a (ASD) is a technique for building disciplined approach to delivering high- complex software systems. ASD is a quality software quickly and design principle for the creation of continuously. It improves a software software systems. The principle focuses project in five essential ways i.e., on the rapid creation and evolution of communication, simplicity, feedback, software systems. respect, and courage. Extreme ASD LIFE CYCLE: Adaptive software development is Features of DSDM: The main features made of three steps (See Fig. 8.4), each of the DSDM method are as follows:1. revolving around the coding of a User involvement. 2. Iterative and program. Step 1: Speculation: During incremental development.3. Increased this phase, coders try to understand the delivery frequency. 4. Integrated tests exact nature of the software and the at each phase.5. The acceptance of requirements of the users. This phase delivered products depends directly on relies on bugs and user reports to guide fulfilling requirements. the project. Step 2: Collaboration: Collaboration in ASD is a balance between managing the doing and creating and maintaining the collaborative environment needed for output. Step 3: Learning: In an adaptive environment, learning challenges all stakeholders, including both developers and customers to examine their assumptions and use the results of each development cycle to learn the direction of the next.
DSDM is dynamic in nature as it's a
Rapid Application Development (RAD) approach to software development. It is an iterative and incremental approach that emphasizes continuous customer/ Client involvement. The DSDM methodology has evolved and matured to provide a comprehensive foundation for planning, managing, executing, and scaling agile process and iterative software development projects. The DSDM project framework is independent of, and can be implemented in conjunction with, other iterative methodologies such as Extreme Programming (XP) and the Rational Unified Process (RUP).