Part E Software Implementation and Management.pptx

someyamohsen2 8 views 43 slides Oct 03, 2024
Slide 1
Slide 1 of 43
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43

About This Presentation

It is about software implementation


Slide Content

Part E : Software Implementation and Management

Objectives This division addresses the implementation and management of computer software. The objectives of this division are as follows: To emphasize the importance of having a wise software implementation plan To underscore the importance of good software management as an essential aspect of good software Engineering To discuss the alternatives for organizing software engineering enterprises and/or ventures. The division consists of the following chapters: Chapter 17 — Software Implementation Issues Chapter 18 — Software Management Chapter 19 —Organizing for Effective Management

Chapter 17: Software Implementation Issues

Contents This chapter discusses important software implementation issues under the following subheadings : Introduction Operating Environment Installation of the System Code Conversion Change Over Training Marketing of the Software Summary and Concluding Remarks

1- Introduction Planning and preparation for this system implementation should start long before the completion of the acquisition. If the implementation is not carefully planned and all factors considered, the exercise can be very frustrating and misrepresenting of the system and professionals responsible for its introduction. Poor implementation can cause the failure and rejection of a well-designed software system that actually meets the needs of its intended users. This underscores that software engineering does not end after product development. Users must be trained to use the product. To this end, the system must be installed, configured and monitored.

2- Operating Environment Consideration about the operating environment addresses the following questions: Will the system be centrally operated , or will a distributed computing environment be in place? What precautions will be necessary , given the environmental constraints?

2- Operating Environment (Cont.…) Central System : The centralized approach is the traditional approach , where the software system runs on a particular machine , and is inaccessible except through that machine . Traditionally, data processing (DP) departments used this approach to manage centralized information All data entry, maintenance, and processing were done centrally and reports were sent to various departments . This approach was (and still is) particularly useful in a batch processing environment.

2- Operating Environment (Cont.…) Central System : Advantages of this approach are as follows: There is a central locus of control, which allows for easy tracking of system problems. There is little or no ambiguity about accountability. The approach is ideal for embedded systems that do not need to interact with multiple end users. The approach suffers from the following disadvantages: The organization’s information system would not very responsive. The approach is very restrictive and inflexible.

2- Operating Environment (Cont.…) Distributed System: The distributed approach is the contemporary approach to software system implementation . All users have access to the software system ( via work-stations) . Data enters the system at various points of origin — via workstations operated by users in different departments, or via electronic transfers (that may be transparent to end users). The software system is accessed by various end-users as required without any intervention from the software engineering team.

2- Operating Environment (Cont.…) Distributed System: Advantages of this approach are as follows: The approach is ideal for multi-user environments. For information systems, immediate access to the system (especially mission critical information) is provided. For information systems, accountability on data accuracy is shifted from the software engineering team to user departments. The software engineering team can concentrate on ensuring that the system provides users with appropriate interfaces, data validity, system performance and other technical issues. Through user training and interaction, a clearer understanding between end-users and software engineering team is enhanced

2- Operating Environment (Cont.…) Other Environmental Issues: The availability of adequate power supply Cooling (or heating) requirements Physical security and accessibility requirements

3- Code Conversion Code conversion is applicable where a software system replaces an existing one, and the coding system used to identify data in one system is different in the other. In such a circumstance , the software engineer must do the following: Analyze both systems and clearly identify points of differences in the coding systems. Design and test a methodology of linking the differing coding systems. Design and test a methodology for converting data from the old format to the new format

3- Code Conversion

3- Code Conversion

4- Change Over Four strategies can be identified: Direct changeover Parallel conversion Phased conversion Distributed conversion

5- Training Training of end users is an integral part of software engineering. The training strategies are often determined by the following issues: Who is being trained Who is conducting the training What resources are available for the training Where the training will be conducted

5- Training (cont. )

6- Marketing of the Software

7- Summary and Concluding Remarks

7- Summary and Concluding Remarks

Chapter 18: Software Management

Objectives This division addresses the implementation and management of computer software. The objectives of this division are as follows: To emphasize the importance of having a wise software implementation plan To underscore the importance of good software management as an essential aspect of good software Engineering To discuss the alternatives for organizing software engineering enterprises and/or ventures. The division consists of the following chapters: Chapter 17 — Software Implementation Issues Chapter 18 — Software Management Chapter 19 —Organizing for Effective Management

Table of Contents : This chapter discusses important software implementation issues under the following subheadings Software management involves product maintenance, product integration and product reengineering. Against this background, the chapter proceeds under the following captions : Introduction Software Maintenance Legacy Systems Software Integration Software Re-engineering Summary and Concluding Remarks

1- Introduction Once the software has been implemented , it then enters a usage phase. During this time, the requirements of the software may change. Software maintenance ensures that the software remains relevant for the duration of its life cycle. Failure to maintain the software can reduce its life cycle, thus making it irrelevant and/or unwanted.

2- Software Maintenance Software Modifications : Software modifications may be put into three broad classifications:

2- Software Maintenance :

3- Software Upgrades and Patches

3- Software Upgrades and Patches

3-Maintenance Cost The more poorly designed the software, the more maintenance will be required and the higher will the maintenance cost be. Conversely, the better the design, the lower the maintenance cost is likely to be.

4- Legacy Systems A legacy system is a system that was constructed using relatively old technology, but its useful life continues within the organization. Companies have legacy systems due to a number of compelling reasons:

4- Legacy Systems (cont. )

5- Software Re-engineering

5- Software Re-engineering (cont. )

Chapter 19: Organizing for Effective Management

Objectives This division addresses the implementation and management of computer software. The objectives of this division are as follows: To emphasize the importance of having a wise software implementation plan To underscore the importance of good software management as an essential aspect of good software Engineering To discuss the alternatives for organizing software engineering enterprises and/or ventures. The division consists of the following chapters: Chapter 17 — Software Implementation Issues Chapter 18 — Software Management Chapter 19 —Organizing for Effective Management

Table of Contents : In software engineering firms, the approach is somewhat different. Not only do these organizations need IT support, they are in business to provide IT/SE services to the public. This chapter examines both scenarios. The discussion proceeds under the following captions: Introduction Functional Organization Parallel Organization Hybrid Organization Organization of Software Engineering Firms Summary and Concluding Remarks

1- Introduction How the IT, SE,or IS division/department is organized will vary from one organization to the other, depending on the following factors : The role that IT plays in the organization The size of the organization The complexity and scope of the organization’s information infrastructure The nature of the business The preference of the CIO Three approaches to organizing the IT, SE, or IS division/department have been observed: • The functional approach • The parallel (project-oriented) approach • The hybrid approach

2- Functional Organization

2- Functional Organization (Cont. ) Advantages of this approach are as follows: There are well-defined areas of specialization; employees in these areas will be very proficient at their work. The reduced span of control promotes effective communication within the functional sections. The approach forces good product documentation . The software product created is likely to be one of high quality. It provides an orderly approach to achievement of long-term goals. The approach provides a sense of stability to team members; for instance, people like the idea of having clearly defined job titles, offices, and roles.

2- Functional Organization (Cont. ) Disadvantages of this approach are as follows: Inter-group communication may be strained. Because a single project is spread over several sections, it might be more difficult to meet targets. The approach promotes a lack of overall perspective of a given project, or the broader information infrastructure among employees of any section. Having job rotations can significantly minimize this drawback This approach is ideal for a medium/small organization with a limited (manageable) number of projects in a given time horizon. However, it is widely used in small, medium, nd large organizations due to its stability.

4- Parallel Organization In the parallel organization (also called project-oriented) approach, the division/ department is split based on specific projects . The idea is to preserve the coherence of software engineering projects. Figure 19-2 illustrates this structure. .

4- Parallel Organization (Cont. )

5- Hybrid (Matrix) Organization The hybrid approach seeks to maximize the advantage of the other two approaches , while avoiding the disadvantages. This idea is to have people with default job descriptions, who can be pulled and assigned to various projects .
Tags