In this unit, we spend some time discussing the cloud. In this unit, take some time to learn a bit about the various cloud service providers. Using your answer to the practical assignment in this unit, describe how you might implement your design using the cloud. Which provider(s) would you use? What type of services would you require? How might you assure the security of the applications in the cloud?
Throughout the material on human-computer interaction, the concept of usability was emphasized. One area of usability that is often overlooked is accessibility. Research a disability, and describe how it effects a user’s ability to interact with systems, and describe some ways the user interface can accommodate these disabilities. Also, feel free to discuss the prevalence of the disability, and whether or not you would feel it is appropriate to make these accommodations in the systems used in the examples in this course.
Who should be in charge of designing the database – team members, who understand the application requirements, or a database design expert, who may not understand the problem domain issues but does understand good database design? How can the team verify that the solution is correct and, more difficult, that it is efficient?
Another interesting combination of both database and integrity is how to design and implement so that the database is secure? What kind of encryption should be used within the database? What data needs to be secure?
What does it mean to have integrated models? Explain how each of the models relate to the other models – models we have learned are use case diagram, CRUD matrix, class diagram, activity diagram, fully developed use case diagram, system sequence diagram, state machine diagram. How can cross checking between models ensure that the requirements are accurate and correct? What are the dangers of not cross checking between the models?
In this unit, you have created a class diagram for a package delivery system, along with all the other participants in this course. Each of you probably has a different class diagram derived from the same narrative descriptions. Can all of these be correct? When evaluating class diagrams, what can we look for to asses that it captured the necessary data requirements? Parts of any assessment will be subjective, but in this discussion, we should explore the objective methods of evaluating these models.
Many developers begin their data modeling by thinking about the physical database, and structuring their data by building tables and fields, and assigning data types and keys. In other terms, they tend to start designing immediately based on their assumptions about the objects that must be tracked in persistent storage. However, as you have seen in this unit, and in the following unit, we learn to analyze the data needs first, irrespective of the physical database designs (which we learn about later). What do you think about this? Are there scenarios where this formal data analysis is not needed, or is this never the case? What are some of the risks to a project that bypasses this formal analysis, and moves directly to the design?
In this unit, we begin looking at formal modeling diagram syntax for information systems. However, you may find that many organizations do not use these formal modeling techniques, and instead use rough drawing techniques (what I call “boxes and arrows”). Why are these formal techniques important, and if you are working with an IT organization that has not adopted a formal standard for process modeling, what might be your advice to entice them to do so?
As an IT auditor, what is the benefit to you if organizations use standard techniques to model their processes and systems, and what challenges might you have in organizations where no such standards exist?
Abraham Maslow – the American psychologist better known for creating Maslow’s Hierarchy of Needs – once stated: “I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail.” I have certainly observed this phenomenon in more than one organization. Someone identifies a need and IT offers a computerized solution to address the need. What often happens is that in an effort to help the business IT takes an existing software solution and expands its capabilities. Usually this happens with applications that are highly configurable. Over time, the applications configuration becomes so extensive and complex that it becomes a burden.
Let me use an example to illustrate:
In an effort to support the Product Engineering organization’s goal to accelerate R&D and improve its chances for successful product launches, the IT organization decided to use an existing ERP platform to configure a number of “new” modules for product analytics. As you may know, ERP applications are very transactional in nature – process and order, issue the work order, manufacture the product, ship it to the customer, produce an invoice, collect payment. Even SAP and Oracle rely on Business Intelligence tools to run sales forecasts and perform data analysis.
Over time the ERP platform became bastardized. It became difficult to upgrade because of the amount of changes it went through and the Product Engineering organization became overly-reliant on the application, making it difficult to replace.
The company’s strategy throughout its 40-year history was one of making money buying and selling other organizations; they would buy a company and run it for its profit then sell it when it became no longer profitable. Ten years ago they decided to change their strategy; they divested from every business except medical devices. Whatever companies they were to buy would have to be one that either complemented or extended the company’s existing product lines. To execute this strategy the company had to be able to absorb newly-purchased organizations as quickly as possible.
If you were a member of the IT Strategic Development Team for the company, how would you align the IT organization’s strategy with that of the company’s?
Hint: think about IT processes, policies, procedures, services, standards, organization.
In this unit, we discuss the importance of stakeholder buy-in when initiating a project. If you have been involved with a project, reflect on the level of stockholder interest in the project, and their involvement, and how this affected the project. You may also find examples of projects using the library resources, and discuss an example of a project failure or success that can be attributed to stakeholder involvement in a project.