Full Transcript

Module 1 The Systems Development Environment Information Systems Analysis and Design Information systems analysis and design is a complex, challenging, and stimulating organizational process that a team of business and systems professionals uses to develop and maintain computer-base...

Module 1 The Systems Development Environment Information Systems Analysis and Design Information systems analysis and design is a complex, challenging, and stimulating organizational process that a team of business and systems professionals uses to develop and maintain computer-based information systems. Although advances in information technology continually give us new capabilities, the analysis and design of information systems are driven from an organizational perspective. An important result of systems analysis and design is application software, software designed to support a specific organizational function or process, such as inventory management, payroll, or market analysis. In addition to application software, the total information system includes the hardware and systems software on which the application software runs, documentation and training materials, the specific job roles associated with the overall system, controls, and the people who use the software along with their work methods. Responsibility of Systems Analyst Systems Analyst has the primary responsibility to : study the problems and needs of an organization in order to determine how people, methods, and information technology can best be combined. helps system users and other business managers define their requirements for new or enhanced information services. Systems Analyst Role The systems analyst role focuses on the IS issues surrounding the system. This person develops ideas and suggestions for ways that IT can support and improve business processes, helps design new business processes supported by IT, designs the new information system, and ensures that all IS standards are maintained. The systems analyst will have significant training and experience in analysis and design and in programming. Business Analyst Role The business analyst role focuses on the business issues surrounding the system. This person helps to identify the business value that the system will create, develops ideas for improving the business processes, and helps design new business processes and policies. The business analyst will have business training and experience, plus knowledge of analysis and design. Requirement Analyst The requirements analyst role focuses on eliciting the requirements from the stakeholders associated with the new system. Requirements analysts understand the business well, are excellent communicators, and are highly skilled in an array of requirements elicitation techniques. Infrastructure Analyst The infrastructure analyst role focuses on technical issues surrounding the ways the system will interact with the organization’s technical infrastructure (hardware, software, networks, and databases). The infrastructure analyst will have significant training and experience in networking, database administration, and various hardware and software products. A software architect takes a holistic view of the organization’s entire IT environment and guides application design decisions within that context. Change Management Analyst The change management analyst role focuses on the people and management issues surrounding the system installation. The change management analyst will have significant training and experience in organizational behavior and specific expertise in change management. Project Manager The project manager role ensures that the project is completed on time and within budget and that the system delivers the expected value to the organization. The project manager is often a seasoned systems analyst who, through training and experience, has acquired specialized project management knowledge and skills. Systems Analyst Skills Technical Skills Analysts must have the technical skills to understand the organization’s existing technical environment, the new system’s technology foundation, and the way in which both can be fit into an integrated technical solution. Business Skills Business skills are required to understand how IT can be applied to business situations and to ensure that the IT delivers real business value. Analytical Skills Analysts are continuous problem solvers at both the project and the organizational level, and they put their analytical skills to the test regularly. Interpersonal Skills Not only do they need to have strong interpersonal abilities, but they also need to manage people with whom they work, and they must manage the pressure and risks associated with unclear situations. Management Skills Often, analysts need to communicate effectively, one-on-one with users and business managers and with programmers. They must be able to give presentations to large and small groups and to write reports. Ethical Skills Finally, analysts must deal fairly, honestly, and ethically with other project team members, managers, and system users. A Modern Approach to Systems Analysis and Design 1950s: Software development focused on automating existing processes, such as purchasing or paying, often within single departments. All applications had to be developed in machine language or assembly language, and they had to be developed from scratch because there was no software industry. Example of System/Computer in 1950’s: UNIVAC I (Universal Automatic Computer I): Introduction: The UNIVAC I, delivered in 1951, was one of the first commercially available computers. Language: It used machine language, but assembly language was also used to simplify programming. The assembly language for UNIVAC I was known as UNIVAC Assembly Language (UNIVAC ASM). Example of System/Computer in 1950’s: IBM 701: Introduction: IBM's first scientific computer, introduced in 1952. Language: The IBM 701 primarily used machine language. However, IBM developed an assembly language for it, known as IBM 701 Assembly Language, which allowed programmers to write more manageable code. 1960s: There was a breakthrough in technology as third-generation computer programming languages (3GL) enabled the development of smaller, faster, less expensive computers—minicomputers—and the beginning of the software industry. Example of System/Computer in 1960’s: DEC PDP-8: DEC(Control Data Protection); PDP (Programmed Data Processor) Introduction: Released in 1965. Uses: The PDP-8 was one of the first successful minicomputers, used in industrial control, academic research, and as a teaching tool in computer science. Features: Compact Size: Its small size and relatively low cost made it accessible to a wider range of organizations. Instruction Set: It had a simple instruction set and used a 12-bit word length. Programming: Offered assembly language programming and was also one of the first systems to support a high-level language (FORTRAN). 1970s: Systems development came to be more disciplined as many people worked to make it more like engineering. Early database management systems, using hierarchical and network models, helped bring discipline to the storage and retrieval of data. The development of database management systems helped shift the focus of systems development from processes first to data first. Example of System/Computer in 1970’s: Oracle Database Introduction: The first version was released in 1979. Uses: Designed to be a relational database system for commercial applications. Features: Relational Model: Based on the relational model, with SQL as its query language. Scalability: Aimed to support large-scale, high-performance database environments. The new century Today there is continued focus on developing systems for the Internet and for firms’ intranets and extranets. Many CASE tools directly support web application development. Another important development is the move to wireless system components. Wireless devices can access web-based applications from almost anywhere. Finally, the trend continues toward assembling systems from programs and components purchased off the shelf. Example of System/Computer in the New Century: Customer Relationship Management (CRM) Systems Example: Salesforce Features: Customer Insights: Provides detailed analytics and insights into customer behavior and sales performance. Customization: Highly customizable with a range of modules and apps to fit different business needs. Automation: Automates sales processes, customer interactions, and marketing campaigns. Integration: Connects with various other business tools and applications. Mobile Access: Offers mobile apps for managing CRM activities on the go. Streaming Services Example: Netflix Features: Personalized Recommendations: Uses algorithms to suggest content based on viewing history and preferences. Content Library: Extensive library of movies, TV shows, and original content. Multi-Device Support: Accessible on various devices including smart TVs, smartphones, tablets, and computers. Offline Viewing: Allows downloading content for offline access. Adaptive Streaming: Adjusts video quality based on internet speed to provide a smooth viewing experience. Information System Development Life Cycle Information System Methodology Information System Methodology refers to the structured approach used to develop, implement, and maintain information systems. This methodology typically involves several phases, each with its own set of activities and objectives. The aim is to ensure that the system meets the needs of users and organizations effectively and efficiently. Waterfall SDLC The Planning phase in the Software Development Life Cycle (SDLC) is crucial as it sets the foundation for the entire project. This phase involves defining the scope, objectives, and resources required for the project. The Analysis phase in the Software Development Life Cycle (SDLC) is focused on understanding and detailing the requirements and needs of the system to be developed. This phase is crucial for ensuring that the software meets the needs of the stakeholders and aligns with the project's objectives. The Logical Design phase in the Software Development Life Cycle (SDLC) focuses on creating a conceptual model of the system that outlines how the software will meet the requirements identified in the Analysis phase. It involves transforming the requirements into a structured, logical representation of the system without considering physical constraints or technology specifics. Tasks: Develop Entity-Relationship Diagrams (ERDs): Create ERDs to represent the data entities, their attributes, and the relationships between entities. Define Data Structures: Outline the data structures and relationships required to support the system’s functionality. Normalize Data: Apply normalization techniques to ensure the data model is efficient and reduces redundancy. The Physical Design phase in the Software Development Life Cycle (SDLC) translates the logical design into a physical blueprint for implementation. It involves specifying how the system will be physically constructed and how the logical design will be implemented using specific technologies and platforms. Create Database Schemas: Develop database schemas and specify the physical layout of data, including tables, columns, and relationships. The Implementation phase in the Software Development Life Cycle (SDLC) involves the actual construction of the software system based on the designs specified in the previous phases. This phase is where the system is built, configured, and prepared for deployment. Code Development Tasks: Write Code: Develop the source code according to the specifications and design documents. Follow Coding Standards: Adhere to coding standards and best practices to ensure code quality and consistency. Develop Unit Tests: Create unit tests to validate individual components and functions. The Maintenance phase in the Software Development Life Cycle (SDLC) involves the ongoing support and enhancement of the software system after its initial deployment. This phase is crucial for ensuring that the system continues to function effectively, adapts to changing requirements, and evolves over time. User Support and Help Desk Tasks: Provide Technical Support: Offer ongoing support to users for troubleshooting and resolving issues. Handle User Requests: Address user requests for assistance, information, or feature enhancements. Maintain Documentation: Update user manuals, FAQs, and other documentation based on new issues or changes. Agile Approach The agile development approach is based on twelve broad principles that give the flexibility to implement the design of a system based on the changing requirements. This approach does not follow a strict development life cycle and instead focuses on the actual working conditions where the development is taking place and who the customers are. The system is capable of any new requirements arising or changing circumstances and can quickly adapt to it in an organization. Object-Oriented System Analysis and Design (OOSAD) It is mostly related to an agile development strategy where a problem is divided into parts or objects. These objects contain both data and processes. These objects are then designed by different team members and can be combined to work together and form a single information system. Organizations use this approach in software design where different processes are broken down into modules or objects and different teams or team members work on their design and implementation. The Origin of Software System Acquisition Turning over responsibility of some or all of an organization's information systems applications and operations to an outside firm Reasons to outsource Cost-effective Take advantage of economies of scale Free up internal resources Reduce time to market Increase process efficiencies System development is a non-core activity for the organization Sources of Application Software Hardware Manufacturers IBM is the leader in software sales and services. Hardware manufacturers tend to focus on system software and utilities. Packaged Software Producers Microsoft is the leader in prepackaged software production. Prepackaged software is off-the-shelf software. Often, prepackaged software is turnkey software (i.e. not customizable). Criteria for Choosing Off-the-Shelf Software Cost Functionality Vendor support Viability of vendor Flexibility Documentation Response time Ease of installation Custom Software Producers Firms like Accenture and EDS are leading custom software producers. Consulting firms develop software to meet the client’s specific requirements. Consulting firms are usually called when the client company does not have in-house expertise or manpower available develop the system. Enterprise Solutions Software Enterprise Resource Planning (ERP) systems that integrate individual traditional business functions into modules enabling a single seamless transaction to cut across functional boundaries. SAP AG is the leading vendor of ERP systems. Note: The "AG" in SAP AG was a German legal designation for a public limited company. Application Service Providers ASP: an organization that hosts and runs computer applications for other companies, typically on a per-use or license basis. In the Philippines, several Application Service Providers (ASPs) offer a range of services, from software applications to cloud computing solutions. Examples of ASP ePLDT Company Using It: PLDT (Philippine Long Distance Telephone Company)ePLDT, a subsidiary of PLDT, provides cloud services, data center solutions, and managed services. Companies across various industries, including finance and telecommunications, utilize ePLDT’s services. Globe Business Company Using It: Globe Telecom Globe Business offers cloud solutions, enterprise applications, and IT services. Many businesses in the Philippines use Globe Business’s services to manage their IT infrastructure and applications. Innove Communications Company Using It: Globe Telecom As a subsidiary of Globe Telecom, Innove Communications provides various IT services including cloud computing and application management. Businesses seeking reliable connectivity and IT solutions often turn to Innove. Microsoft Philippines Company Using It: Numerous enterprises and organizations Microsoft Philippines provides cloud computing services (Azure), productivity tools (Microsoft 365), and enterprise applications. Many companies in the Philippines use Microsoft’s cloud and application services. In-House Development If sufficient system development expertise with the chosen platform exists in-house, then some or all of the system can be developed by the organization’s own staff. Often, there are a variety of sources used, with in-house staff playing a role as well as consultants or ERP vendors. In-house development refers to the practice of creating software or applications within a company rather than outsourcing to third-party vendors. Example of In-house Development Ayala Corporation Example: Ayala Land’s Property Management System Ayala Land, a major real estate developer in the Philippines, developed its own property management system to handle leasing, sales, and property management functions. This in-house system is tailored to meet the specific needs of Ayala Land’s extensive property portfolio. BDO Unibank Example: BDO Online Banking Platform BDO Unibank, one of the largest banks in the Philippines, developed its online banking platform in-house to provide a secure and user-friendly digital banking experience. The platform includes features like account management, transaction processing, and customer support. San Miguel Corporation Example: SMC’s Enterprise Resource Planning (ERP) System San Miguel Corporation, a diversified conglomerate, developed its ERP system internally to manage its various business units, including food and beverage, energy, and infrastructure. The system integrates various business processes and helps streamline operations across its extensive portfolio. Globe Telecom Example: Globe’s Customer Relationship Management (CRM) System Globe Telecom developed its CRM system in-house to better manage customer interactions, track service requests, and enhance customer service. The system supports Globe’s extensive customer base and helps in delivering personalized services. PLDT Example: PLDT’s Internal Network Management System PLDT, a major telecommunications provider, created its own network management system to monitor and manage its telecom infrastructure. This in-house system helps ensure network reliability, performance, and security. Validating Purchased Software Information Use a variety of information sources: Vendor’s proposal Running software through a series of tests Feedback from other users of the vendor’s product Independent software testing services Articles in trade publications What is an RFP? Request for Proposal: a document provided to vendors to ask them to propose hardware and software products or services that will meet the requirements of a new information system. Based on vendor bids, analyst selects best candidates. Examples of RFP Philippine Government Example: Department of Information and Communications Technology (DICT) The DICT issues RFPs for various IT and infrastructure projects, such as the development of national broadband networks or cybersecurity solutions. For instance, DICT might issue an RFP for a project like expanding the government's e-Governance initiatives. Manila Water Company Example: Manila Water’s Water Treatment Projects Manila Water, which provides water and wastewater services to Metro Manila, issues RFPs for projects like new water treatment facilities or upgrades to existing infrastructure. These RFPs invite vendors to propose solutions that meet their operational needs. PLDT Example: Telecommunications Infrastructure Upgrades PLDT, a major telecommunications provider, uses RFPs for procuring equipment and services related to network upgrades and new technology implementations. For example, an RFP might be issued for the deployment of new fiber optic networks. End of Module 1

Use Quizgecko on...
Browser
Browser