Test information systems. CASE tools: general overview and comparative characteristics


Before proceeding with the actual report, I would like to make a few preliminary remarks regarding the topic of today's lesson.

1. It seems advisable to take into account the fact that each employee of our department has access to the Internet, so everyone can obtain information of interest to them at any moment through a search engine. The fact is that there is already a lot of information on this topic on the Internet, even in Russian. Therefore, a simple presentation of this material is unlikely to be of great interest.

2. We could talk for quite a long time about what CASE tools are, what they are used with, how they are used in certain organizations, and how to use them correctly. To put it figuratively, you can hover in CASE clouds for quite a long time. However, we all work in the same specific organization - RUMS. And if so, then it is advisable to constantly remember this and try, as far as possible, not to lose touch with specifics. That is, we must proceed in our work from the interests of our organization and analyze CASE tools based precisely on this circumstance.

3. Obviously, in reality we cannot afford to buy any CASE tool available on the market, there are quite certain restrictions, someone may have language problems when working with those foreign tools that have not yet become widely used in Russia and, finally, we all have current planned work, from which no one will free us anyway.

The three circumstances mentioned above - access to the Internet, connection to the needs of RUMS and the limited choice of CASE tools - make it possible to significantly narrow the range of problems discussed today.

Prelude or epigraph

I'll start with an anecdote about an Italian fisherman.

“An Italian fisherman is lying on the shore of the warm Adriatic Sea and is not doing anything. American tourists pass by and turn to the fisherman with a question.

· Why are you lying here, doing nothing, not earning money?

· WHAT FOR?

· Well, the Americans are surprised, you could work more and become not just a fisherman, but a boat owner.

· WHAT FOR?

· You could work even harder and become the owner of several boats.

· WHAT FOR?

· You would become a large owner, earn a lot of money and could afford to relax on the shore and do nothing.

· WHAT AM I DOING?

An interesting anecdote. It’s not for nothing that it is cited in some manuals on strategic management... Everyone gives themselves the answer to the question: why do I need this? Unfortunately, you won’t get an answer from me to the question: why exactly do you need CASE tools? Neither today nor tomorrow. Everyone dies alone and everyone answers this question for themselves. I will try to talk about my experience, my point of view, my version of the answer to this key question and express my opinion, which does not at all claim to be universal.

There is such a science: botany. Pistils, stamens, stems, roots and leaves.. Description of nature. Usually verbal, but in written form. There is another science: chatter. Today we will do just that: a chat on the topic of what CASE technologies are and how to deal with them. I ask you to be patient for 30-40 minutes and try to be able to endure my free rantings on the above topic during this entire period of time. Just in case, I apologize to the ladies if some examples seem too, so to speak, frivolous to them...

2. Terms and definitions

2.1. About terms

As often happens, different people understand the same term differently. In this regard, I will start with a fairly well-known example: three blind men are trying to define the term “elephant”. One holds him by the trunk, another by the tail and the third by the leg. Obviously, the definitions given by each of the blind men will be different, although they will all be talking about the same object - an elephant. The situation is similar with the term CASE - technology. If you type the term CASE tools or CASE technologies in the search bar, you can get hundreds of documents, so any of you can do this yourself at your workplace and... read until you lose your pulse. What can you pay attention to?

In most sources, by default, it is assumed that the reader already knows what CASE tools or CASE technologies are and, moreover, knows what the author of the publication himself understands by this term. Imagine what would happen if those three blind men decided to write a book on the topic: elephants - general review And comparative characteristics. And on this basis we would draw conclusions about the feasibility practical use elephants, for example, when collecting bananas or catching fish, and they themselves would not tell the reader that the elephant is something like a rope (tail), a pipe (trunk) or a post (leg). What should the reader do? Where to go? And what’s interesting is that the conclusions of three blind people would probably be different. At the same time, it is quite obvious that they would hardly have found mutual understanding even with each other. Although they are all specialists in CASE technologies, that is, I wanted to say, in elephants. Elephant experts, in general... Let us accept for simplicity that each of the three blind men is conscientious, sincere, tries to get to the bottom of everything, as they say... And therefore looks at what others write about elephants.. And what does he see? The one who holds the elephant by the leg says that elephants are a comfortable stool for catching fish. And the one who held the elephant by the tail does not agree with this: the elephant is a convenient fishing tool, something like a fishing line. Etc. and so on. And so they begin to argue.. As they say, the result of any dispute can be easily predicted in advance: getting personal, sorting things out and... What do you understand! How can you do that - put an elephant on a chair... It's a rope! He’s like that himself... And the third one will silently grin through his mustache - he knows that an elephant is something like a pipe and only laughs at these two.. At best, everyone will remain with their own.. Why? They just didn’t agree on the terms at the start. This happens quite often in life.

Arguing about terms is a fruitless exercise. On the Internet, information on the topic of CASE tools is quite extensive - even in Russian - therefore, in order to avoid tedious discussions and not go into details, we will agree at the start what will be discussed in the upcoming classes.

Decoding the abbreviation CASE: Computer Aided Software Engineering, which can be translated into Russian approximately as development software using a computer. In accordance with GOST 19781-90 Software- a set of information processing system programs and program documents necessary for their operation. To put it simply: software is the programs used on a computer along with their description. So what do we have? That is, the development of programs used in a computer, using a computer. So? But how can you write them without a computer? This is what happens... To look after a girl with the help of... a girl.. But how to look after her when there is no girl? Can you imagine it? I am somehow vague. You can, of course, carve Galatea out of stone or compose music, especially when you have nothing else to do... In general, it is clear that nothing is clear. What's it like to develop software using a PC? The question is, of course, interesting... Let's figure it out together.

2.2. Coming down to earth

Obviously, there are different types of software. In particular, applied and systemic. Everything is simple here: we work in OPO - a structural division of RUMS and by nature professional activity many of us are involved in the application software development process.

What do our customers tell us? In general, this can be characterized as follows: write us a program to make it work. What this means is that customers themselves tend to formulate their desires on formal language can not. And the point here is not that we were so unlucky, and that it is our customers, say, who do not think much about what they say and/or write in their certificates and technical specifications. That's not the point at all. Our customers are the most normal. This situation is typical for most customer organizations. The customer often doesn’t know what he wants, or knows, but doesn’t say, or knows, but can’t say.. Just like a dog.. And that’s normal. Be that as it may, we here at OPO cannot sit idly by and humbly wait for our customers to be able to write us ready-made technical specifications, according to which we could immediately develop software products. In this regard, by the way, at one time the RUMS standard “Software Life Cycle” was developed, in which everything is described in quite detail: what, why, where and why. And those who have not read it yet can be recommended to use it in their practice now when communicating with our customers. But this standard says nothing about CASE tools, or about the features of software development, and even the software life cycle models (cascade, waterfall and spiral), in my opinion, are not even described there. This is all our inner kitchen. And today we're talking about exactly this: about our inner kitchen.

So, we are developing application software at the request of workers. And let them put more pressure on us than on us, but in our room it is warm, dry, cozy and flies don’t bite, for which we must first of all thank our beloved management, which we all (hopefully) love, appreciate and respect. By at least, to the one who is now standing in front of you, all this applies fully.

Question: how can we still use our computers to develop this application software?

When it comes to software, it can be divided into simple and complex. In order not to argue about terms, we will immediately make a reservation: we will call software that is conceived, developed, maintained and used by the same person simple. Well, complex software is developed by a team of developers. It is now almost universally accepted in the literature that the use of CASE tools is justified (advisable) specifically when developing complex software, when several people are involved in the same work, and when the goal is to increase labor productivity, improve quality software products, support a unified and consistent work style, etc. and so on.

For those who have not read Gradi Bucha's book "Object-Oriented Analysis and Design", it may be interesting to know, but for others I will simply remind you that his classic work begins with the following anecdote.

A doctor, a builder and a programmer were arguing about whose profession was older. The doctor noted: “The Bible says that God created Eve from Adam’s rib. Such an operation can only be performed by a surgeon, so I can rightfully claim that my profession is the most ancient in the world.” Then the builder intervened and said: “But even earlier in the Book of Genesis it is said that God created heaven and earth out of chaos. This was the first and, undoubtedly, the most outstanding construction. Therefore, dear doctor, you are wrong. My profession is the oldest in the world ". At these words, the programmer leaned back in her chair and said with a smile: “Who do you think created the chaos?”

As they say, there is a grain of humor in every joke. When it comes to the need to develop complex (or, in the terminology of Gradi Bucha, industrial) software, its own, rather specific problems arise, which, perhaps, can actually be overcome in some cases through the targeted and conscious use of CASE tools, - who knows?

So, today we will talk about CASE tools, that is, tools that help develop software, and at the same time we will keep in mind that our customers are the most normal, but this, unfortunately, does not make the problems any easier .

So, let's remind ourselves of the topic of today's lesson - see the title. Obviously, the question of interest is which of the CASE tools available on the market today and at the same time accessible to us, we can already use today in our practical activities during software development.

In the literature you can find a lot of good, beautiful, clever words about what CASE tools are, what they are used for, what can be done with them, and how they allow us to save energy, time, money, nerves, health, etc. . and so on. Well, in general, everyone can read a lot of good things on this topic. There are already so many praises on this topic on the Internet that sometimes, willy-nilly, the desire arises to say: “Don’t agitate me for Soviet power.” Or, like the cannibal Ellochka, “Don’t teach me how to live.. Better help financially.”. translated into Russian this will mean, give me the answer to the question: what remedy and where to use it? The information on this topic is extremely extensive on the Internet. You can spend long hours in front of monitor screens and read, read, read... Similarly, you could now chat, chat, chat... I personally don’t see the point in all this activity. I propose now to speculate on this topic based on basic common sense.

First, about what you can choose from. According to A. Vendrov, today Russian market The software has the following most developed CASE tools:

    Vantage Team Builder (Westmount I-CASE);

Obviously, this list is far from complete. In one of the reviews, I came across the following figure: someone was not too lazy and calculated that there are already about 300 different CASE tools in total. At the same time, as usual, in all publications the best, most universal, etc. etc. - in short, the best one, according to one author or another, is precisely the development tool that he uses. The reasons here are clear: in some cases, whoever pays calls the tune, in others, the author proceeds from what he has at hand. In general, there are a lot of CASE tools in the world. We will proceed from this. At the same time, we all want to be rich and healthy, but for some reason the number of sick and poor in the world does not decrease because of this desire. Therefore, from the most general considerations, one can guess that since there is no single universal CASE tool for all occasions in the world, it means that they all have their own advantages and disadvantages. Is not it? How can you avoid drowning in this entire ocean?

To try to find an answer to this question, which is absolutely necessary to do before we conduct a general review and, even more so, an analysis of the CASE tools available on the market, let’s go back to our place, in RUMS. Obviously, I can only answer for myself. And I will look for my own answer. And I will offer it today for everyone to see.

Returning to the Cheshire cat and the Italian fisherman, let’s ask ourselves the following question: why do we need this - to use some kind of CASE-tools, when here, in RUMS, no one needs it, when nothing will change anyway, it’s over our head if you don’t jump, no one will appreciate it and... they won’t give you a bonus for it... And in general: our management is not very interested in information technology and it is quite difficult to convince them of the need to purchase licensed software, etc. and so on. Sound familiar? Remembering the classic: “Eh, guys, everything is wrong, Everything is not as it should be...” The list of complaints can be continued in the smoking room or here - it doesn’t matter. As they say, everyone dies alone. And if someone has a desire to lie on the shore of the Adriatic Sea and admire the sunset, he can continue to do so, at least until he receives, um.. a kick from management or at least a carrot...

So, CASE tools are tools that help us develop complex software using a computer. About the need to unify the software being developed, create some universal modules, libraries, etc. and so on. has been said within these walls for a long time. Many people have suggestions on what and how to do... In general, we will not list all these problems, sores, etc. that are familiar to us all. Let's turn to examples. For some reason, no one is surprised that when we come to the local clinic for an appointment, there are offices for an ophthalmologist, a therapist, a surgeon, etc. and so on. That is, medicine is one thing, but as for information technologies, then... If we develop this analogy further, we can say that a programmer is an analogue of the term “doctor”. Is not it? But each of us has our own narrow specialization...

I wanted to become a geologist, dermatovenerologist,

Then I wanted to be, like my mother, a gynecologist,

And he became a neurologist to spite his enemies!

Now I hit them over the heads with a hammer...

A. Rosenbaum

So, we hardly need to explain to each other that we all also specialize, each in our own field. I have become a neurologist, that is, I wanted to say, I am developing information models individual structural divisions of RUMS and the entire RUMS as a whole. This implies the choice of the tools that I use; and in fact, a surgeon will not perform operations with a hammer.. Right? So it is here.. In general, we will have separate classes on this topic, but for now let’s return to our ba... that is, to CASE tools.

I will return to myself and state my point of view, without claiming any generalizations. But I would like to especially emphasize: until the answer to this question is received, all other efforts are meaningless. Then it doesn't matter where to go..

So, we have already agreed that by CASE tools we will understand tools that help us develop software using a computer, and until we at least answer the question of why we need this - some kind of CASE tools, It doesn’t make much sense to choose and compare. As the Cheshire Cat says, then it doesn't matter where you go...

How do we usually develop software? We are not free artists. Each of us has a very specific plan, approved by the Chief Engineer of RUMS. In this plan, it is detailed who does what. The plan is hanging on the stand. Where did the items in this plan come from? - It’s clear that everything is being done at the request of the workers.

Let us take the following statement as an axiom: we are obliged, that is, we need it, to follow the instructions of the Chief Engineer and the requests of our customers. Justification: this is exactly what we are paid for here. It seems to me that the rationale is quite serious. And it is in this context that we will look for answers to the question of which CASE tools we need to use. Then, as a consequence, we get the answer to the Cheshire Cat’s question: we want to fulfill the Schedule Plan of OPO RUMS.

There are 70 items in the OPO task list, including billing (billing and pre-billing), accident analysis, statistics, accounting programs, etc. Many of them are in one way or another based on the analysis of information coming from stations AXE10-1 and AXE10-2. The tasks are very serious, large-scale and complex. The main difficulty is that more and more input is constantly coming in the form of certificates, requests, memos, etc. and so on. As they say in the same classic book by Gradi Bucha, for some reason, when a builder builds a 100-story building, when the upper floors have already been built, no one thinks of asking the builder to redo or expand the foundation. And here we have it all the time. What is the matter here, what solutions could there be - for example, in the implementation of a spiral software life cycle or others, it is better to let those who themselves deal with this every day judge. I would rather turn to the problems that I had to face, and using this - my - example, show and tell which CASE tool was chosen to solve the problems and why it was this one and not some other. This will be a review and analysis of comparative characteristics.

4.2. My experience

About a year ago I was given a task, which can be briefly formulated as follows: to describe technologies and build information models of structural divisions of RUMS... And then - a list of divisions.. Having received such a task at the beginning of 2003, I scratched my turnips for quite a long time, what should I do? what should I do and what should I do.. I actually thought for a long time.. In the end I wrote a report on the topic “Modeling RUMS”, in which, as they say, I expressed everything I thought about the task received. The steam was released. Anyone interested can read it, I don’t mind. To my surprise, despite all these tricks of mine, I was still not kicked out of work, which, I must admit, I was very happy about. Because after a long and prolonged illness, that is, thoughts, doubts, hesitations and reflections, an iterative procedure for describing technological processes, structure and information models of RUMS divisions, which is currently implemented for a number of structural divisions.

In the next classes I will have to make reports on the topics “Diagrams of structural-system analysis” and “Universal Modeling Language (UML)”. Apparently, then we will talk more specifically about all these matters, then we will consider everything in more detail, already with concrete examples and diagrams, but now it makes sense based on the considerations for which a specific CASE tool was selected.

Obviously, not the last factor determining the choice is the actual availability or unavailability of a particular application. At the start, I didn’t have a very large choice: we were talking about a product from Platinum All Fusion Process Modeler (BPWin) and a product from Rational - Rational Rose. I had both of these products at my disposal and now have them installed on my PC. Someone may choose other products - this is no longer important. How these products differ, how to work with them, everyone can also read in program descriptions, advertising, the Internet, etc. Today, it seems appropriate to talk about another topic, namely: to answer the question for ourselves: why is one better (worse) than the other? As has been repeatedly noted above, the key question is: “Why do I need this?” Answer to the question: to build information models of structural divisions of RUMS. So, which of these two products is more suitable for building information models and describing their technological processes. To answer this question, let's think a little.

So, I found myself in a situation where it was necessary, at least somehow, to model the technologies of RUMS as a whole and its individual structural divisions. As I already said, I have already spoken wholeheartedly about RUMS modeling in general in my report “ROMS Modeling”. There were a lot of critical comments made about our lives. It is obvious that not only I alone, but many of us can shoot quite a fair number of arrows at our leadership, and at its individual specialists, and in terms of equipment, we are not quite there yet, and our lines are old and the control system does not meet modern requirements etc. and so on. I would like to respond to all these criticisms with just one phrase uttered by our Chief Engineer during one of the technical meetings, with which I personally agree, as they say, 100%. So, you can scold the ROMS, Director, Chief Engineer, specialists, security guards, etc. a lot. and so on. But.. There is one But.. RUMS - as a system, as certainly complex technical system- it works... Even if it’s bad somewhere, even if it’s creaking somewhere, but it works... The same can be said about our software: even if it’s written somehow incorrectly so, the performance is not very good, and the databases there are inconvenient, and the methods are procedural, etc. etc., but this is all work... What follows from this? - You should live.. And, as a result, breaking is not building. Therefore, now we will still be talking about the paths of evolutionary, rather than revolutionary development.

1. The basis of the information system is

a) environment for storing and accessing data

b) computing power computer

V) computer network for data transfer

d) information processing methods

2. Information systems are focused on

a) the end user who is not highly qualified

b) programmer

c) a specialist in the field of DBMS

d) the head of the enterprise

3. An integral part of any information system is

a) database

b) a program created in the environment Delphi development

c) the ability to transmit information via the Internet

d) a program created using a programming language high level

4. Currently, database management systems are the most widely used

a) object-oriented

b) relational

c) hierarchical

d) network

5. Database management systems are more modern

a) hierarchical

b) network

c) relational

d) post-relational

6. DBMS Oracle, Informix, Subase, DB 2, MS SQL Server refer to

a) network

b) hierarchical

c) relational

d) object-oriented

7. Traditional method organization of information systems is

a) client-client architecture

b) client-server architecture

c) server-server architecture

d) placing all information on one computer

8. The first step in IC design is

a) formal description of the subject area

b) building complete and consistent IS models

c) choosing a programming language

d) IS interface development

9. To increase the efficiency of software development, use

a) CASE – means

10. By means of CASE we mean

a) software that supports the processes of creating and maintaining software

b) high level programming languages

c) software development environments

d) application programs



11. A visual application development tool is

A) Visual Basic

d) high-tech programming language

12. Microsoft.Net is

a) platform

b) programming language

c) database management system

G) application program

13. By scale, IP is divided into

a) small, large

b) complex, simple

V) object-oriented and others

d) single, group, corporate

14. According to the scope of application, IP is divided into

a) transaction processing systems

b) decision support systems

c) systems for carrying out complex mathematical calculations

d) economic systems

15. According to the scope of application, IP is divided into

a) economic

b) applied

c) information and reference

d) office

16. Transaction is

a) data transfer

b) data processing

c) a set of operations

d) data conversion

17. Drawing up estimates and budget for the project, determining the need for resources, developing calendar plans and work schedules belong to the phase

a) preparation of a technical proposal

b) conceptual

c) design

d) development

18. Collection of initial data and analysis of the existing state, comparative assessment of alternatives belong to the phase

a) conceptual

b) preparation of a technical proposal

c) design

d) development

19. The following mistakes are most often made in the initial phases of IS development:

A) incorrect choice programming language

b) wrong choice of DBMS

c) incorrect selection of programmers

d) errors in determining the interests of the customer

20. The life cycle of an IP is regulated by the ISO/IEC 12207 standard. IEC is

a) international organization for standardization

b) international commission on electrical engineering

c) international organization for information systems

d) international software organization

21. According to the standard, the structure life cycle IS consists of processes

a) main and auxiliary life cycle processes and organizational processes

b) development and implementation

c) programming and debugging

d) creation and use of IP

22. The most common life cycle model is

a) parallel development model software modules

b) object-oriented model

c) cascade model

d) model of an integrated approach to IS development

23. The most common life cycle model is

a) linear model

b) non-linear model

c) continuous model

d) spiral model

24. A more preferable life cycle model is

a) cascade

b) model of an integrated approach to IS development

c) linear model

d) spiral

25. The phrase - rapid application development is abbreviated as

26. Rapid application development methodology is used to develop

a) small IPs

b) standard ICs

c) applications in which the user interface is secondary

d) systems on which human safety depends

27. According to ISO 12207, the combination of one or more processes, hardware, software, equipment and people to satisfy specific needs or purposes is

a) information system

b) system

c) full-featured software and hardware complex

d) computer center

28. The basis of almost any IP is

b) high level programming language

d) a set of methods and tools for creating IP

29. The main functions performed by a DBMS usually include

a) transaction management

b) logging

c) performing calculations

d) diagramming

30. Support for the DBMS transaction mechanism is

a) mandatory

b) desirable

c) optional

d) very likely

31. Parallel execution of a mixture of transactions, the result of which is equivalent to the result of their sequential execution, is called

a) parallelization

b) complex processing

c) serialization

d) simultaneous processing of transactions

32. A log entry of information about changes occurring in the database is called

a) logging

b) taking into account events

c) recording changes

d) monitoring

33. Thanks to the work of E. Codd, databases were created

a) relational

b) network

c) hierarchical

d) object-oriented

34. Relational databases got their name due to the fact that

a) data tables are interconnected

b) they process information quickly

c) they can store data of complex structure

d) the data in them is presented in the form of tables

35. Last update SQL language standard was adopted in the year

36. Real world entities are closer to the data model

a) relational

b) object-oriented

c) hierarchical

d) network

37. Relational DBMSs use data models

a) object-oriented and relational

b) relational and hierarchical

c) hierarchical and network

d) causal

38. The main advantages of the relational approach to database management include

a) the ability to relatively simply model most common subject areas

b) the presence of a simple and powerful mathematical apparatus

c) the ability to describe objects of any complexity

d) ease of displaying real world relationships

39. A set of atomic values ​​of the same type is called

a) domain

b) a tuple

c) attribute

d) data type

40. The columns of a relationship are called

a) tuples

b) domains

c) attributes

d) columns with the same type of values

41. The relation line is called

a) a tuple

b) attribute

c) domain

d) table row

42. The number of tuples is called

a) cardinal number

b) power ratio

c) the magnitude of the ratio

d) defining number

43. To indicate empty field values, use

a) dash

d) absence of any symbols

44. The value of an attribute is unknown if in the corresponding field

a) any symbols are missing

b) there is a dash

c) the word NULL is written

d) the number is zero

45. Primary key has the property

a) uniqueness

b) ease of use

c) minimalism

d) intuitiveness

46. ​​In tables relational base data

a) tuples and attributes are stored in unordered form

b) only attributes are ordered

c) only tuples are ordered

d) attributes and tuples are stored in ordered form

47. Data normalization aims to

a) reducing information redundancy

b) bringing data to a standard form

c) bringing data to normal looking

d) ordering the data structure

48. The language for relational data management is

49. The first version of the SQL language was called

50. ANSI SQL is

a) language standard

b) detailed description language

V) newest language data manipulation

d) SQL language extension

51. SQL language commands are divided into language commands

Data Definitions

Data manipulation

Data Transformations

Data storage

52. SQL language commands are divided into language commands

53. SQL language commands are divided into language commands

54. SQL language commands are divided into commands

Database Administration

Transaction management

Database normalization

Database upgrades

55. NULL value equivalent

Lack of information

Number zero

Space

Dash

56. Performance

No different from the table

Permanently stores any data

Differs from a table only in formatting

Most of the time contains no data

57. Stored procedures are

Groups of related SQL statements

Subroutines

Data storage rules

58. Triggers are

Type of stored procedures

Data storage method

Procedures Reserve copy

Data protection functions from unauthorized access

59. Restriction of access to information stored in the database is regulated using privileges

To create a table

60. The restriction of access to information stored in the database is regulated using privileges

To create a stored procedure

INSERT (field_name)

UPDATE (field_name)

61. Object privileges are privileges

To create a table

To create a stored procedure

To create a view

62. Object privileges are privileges

To delete a table

To delete a view

To delete a stored procedure

63. The REFERENCE privilege allows

Refer to all fields of a specified table

Create and drop tables, views and stored procedures

Transfer access rights to other users

Change information in the database

64. To control user access to the database in SQL language there is an operator

65. The GRANT statement is used to

Granting the user both system and object privileges

Revoking privileges granted to a user

Providing to the user system privileges

66. The REVOKE statement is used to

Cancellation of granted privileges

Granting a user system privileges

Granting the user both system and object privileges

Granting a user object privileges

67. Power Designer is

Data Modeling System

High level programming language

Software for rapid website development

68. CASE funds can carry out

Documentation generation

Project verification

Help in decision making

Selecting a programming language or DBMS

69. CASE funds can carry out

Automatic generation program code

Maintenance and reengineering

Coordination of development stages with the customer

Project cost estimate

70. The ability to define a single name for a procedure or function that applies to all objects in the inheritance hierarchy is a consequence

Polymorphism

Encapsulation

Inheritance

Implementations

71. Combining data with procedures and functions that manipulate this data is a consequence

Encapsulation

Inheritance

Polymorphism

Bindings

72. The ability to use already defined classes to build a hierarchy of classes derived from them is -

Inheritance

Class Consistency

Succession

Encapsulation

Answers to the test in Information Systems


Characteristics of CASE funds

The main characteristics of CASE tools, important from the point of view of modeling and optimization of business processes, are the following:

  • Availability of a graphical interface. To represent CASE process models, tools must be able to display processes as diagrams. Diagrams are much easier to use than various text and numerical descriptions. This allows you to obtain easily manageable model components with a simple and clear structure.
  • Availability of a repository. The repository is common base data, which contains a description of process elements and relationships between them. Each repository object must have a list of properties specific only to this object.
  • Flexibility of application. This characteristic makes it possible to represent business processes in various options that are important from the point of view of analysis. CASE tools should allow for process analysis and creation of models focused on various aspects activities of the enterprise.
  • Possibility of team work. Process analysis and modeling may require collaboration several people. To simultaneously work on CASE process models, tools must provide change management for any fragments of models and their modification with collective access.
  • Building prototypes. Process prototypes are necessary so that in the early stages of process change it is possible to understand how well the process will meet the requirements.
  • Generating reports. CASE tools should ensure the construction of reports on all process models, taking into account the relationship of elements. Such reports are necessary to analyze models and identify optimization opportunities. Reports provide control over the completeness and sufficiency of models, the level of decomposition of processes, the correctness of the syntax of diagrams and the types of elements used.

Selection of CASE funds

The choice of CASE tools for analyzing and modeling processes depends on many factors - financial capabilities, functional characteristics, personnel training, information technology tools used, etc. It makes no sense to provide an exhaustive list of these factors, because in a situation of choice for each specific case, this composition will change. However, it is possible to define a set of “basic” factors on the basis of which the criteria for selecting CASE funds are determined.

CASE (Computer-Aided Software Engineering) is a set of software engineering tools and techniques for software design that helps ensure high quality programs, absence of errors and ease of maintenance of software products. CASE is also understood as a set of methods and tools for designing information systems using CASE tools.

Program development automation tools (CASE tools) are tools for automating the design and software development processes for systems analysts, software developers and programmers. Initially, CASE tools were understood only as tools for simplifying the most labor-intensive processes of analysis and design, but with the advent of the ISO/IEC 14102 standard, CASE tools began to be defined as software tools for supporting software life cycle processes.

Modern CASE tools cover a wide range of support for numerous IC design technologies: from simple remedies analysis and documentation to full-scale automation tools covering the entire software life cycle.

CASE tools include relatively cheap systems for personal computers with very disabilities, and expensive systems for heterogeneous computing platforms and operating environments. So, modern market There are about 300 different CASE tools, the most powerful of which are used in one way or another by almost all leading Western companies.

Typically, CASE tools include any software tool, automating one or more software life cycle processes and having the following basic characteristic features:

  • · powerful graphical tools for describing and documenting IP, providing user-friendly interface with the developer and developing his creative capabilities;
  • · integration of individual components of CASE tools, ensuring controllability of the IS development process;
  • · usage in a special way organized storage of project metadata (repository).

An integrated CASE tool (or a set of tools that support a complete software life cycle) contains the following components;

  • · repository, which is the basis of the CASE tool. It should provide storage of versions of the project and its individual components, synchronization of information received from various developers during group development, control of metadata for completeness and consistency;
  • · graphical analysis and design tools that provide the creation and editing of hierarchically related diagrams (DFD, ERD, etc.) that form IS models;
  • · application development tools, including 4GL languages ​​and code generators;
  • · configuration management tools;
  • · documentation tools;
  • · testing tools;
  • · project management tools;
  • · reengineering tools.

All modern CASE tools can be classified mainly into types and categories. Classification by type reflects the functional orientation of CASE tools towards certain life cycle processes. Classification by category determines the degree of integration according to the functions performed:

  • · local tools that solve small autonomous tasks (tools),
  • · a set of partially integrated tools covering most stages of the IS life cycle (toolkit)
  • · fully integrated tools that support the entire IS life cycle and are linked by a common repository.

In addition, CASE tools can be classified according to the following criteria:

  • · applied methodologies and models of systems and databases;
  • · degree of integration with the DBMS;
  • · available platforms.

The classification by type basically coincides with the component composition of CASE tools and includes the following main types:

  • · analysis tools (Upper CASE), designed for building and analyzing domain models (Design/IDEF (Meta Software), BPwin (Logic Works));
  • · analysis and design tools (Middle CASE), supporting the most common design methodologies and used to create design specifications (Vantage Team Builder (Cayenne), Designer/2000 (ORACLE), Silverrun (CSA), PRO-IV (McDonnell Douglas), CASE .Analyst (MacroProject)). The output of such tools are specifications of system components and interfaces, system architecture, algorithms and data structures;
  • · database design tools that provide data modeling and generation of database schemas (usually in SQL language) for the most common DBMS. These include ERwin (Logic Works), S-Designor (SDP) and DataBase Designer (ORACLE). Database design tools are also available in Vantage Team Builder, Designer/2000, Silverrun, and PRO-IV CASE tools;
  • Application development tools. These include 4GL tools (Uniface (Compuware), JAM (JYACC), PowerBuilder (Sybase), Developer/2000 (ORACLE), New Era (Informix), SQL Windows (Gupta), Delphi (Borland), etc.) and generators codes included in Vantage Team Builder, PRO-IV and partially in Silverrun;
  • · reengineering tools that provide analysis of program codes and database schemas and generation based on them various models and design specifications. Database schema analysis and ERD generation tools are included in Vantage Team Builder, PRO-IV, Silverrun, Designer/2000, ERwin and S-Designor. In the field of program code analysis, the most widely used are object-oriented CASE tools that provide reengineering of programs in C++ (Rational Rose (Rational Software), Object Team (Cayenne)).

Auxiliary types include:

  • · project planning and management tools (SE Companion, Microsoft Project, etc.);
  • · configuration management tools (PVCS (Intersolv));
  • · testing tools (Quality Works (Segue Software));
  • · documentation tools (SoDA (Rational Software)).

Today, the CIS software market has the following most developed CASE tools:

  • · Vantage Team Builder (Westmount I-CASE);
  • · Designer/2000;
  • · Silverrun;
  • ERwin+BPwin;
  • · S-Designor;
  • · CASE.Analyst.
  • E-drowMax

There are two main design methods: structural and object-based - oriented design. Essence structural approach to the development of an IS lies in its decomposition (breakdown) into automated functions: the system is divided into functional subsystems, which in turn are divided into subfunctions, subdivided into tasks, and so on. The splitting process continues until specific procedures. At the same time, the automated system maintains a holistic view in which all components are interconnected. When developing a system "bottom-up" from individual tasks to the entire system, integrity is lost, and problems arise in the information connection of individual components.

Object-oriented design involves an object-based decomposition of the system. An object is a really existing entity that has important functional purpose in this subject area. An object is characterized by structure, state, and clearly defined behavior. The state of an object is defined by a list of all possible (usually static) properties and the current values ​​(usually dynamic) of each of these properties. The properties of an object are characterized by the values ​​of its parameters.







2024 gtavrl.ru.